簡體   English   中英

為什么我不能在PendingIntent中使用Intent.FLAG_ACTIVITY_NEW_TASK

[英]Why can't I use Intent.FLAG_ACTIVITY_NEW_TASK in PendingIntent

我正在創建一個將發送通知的應用程序。 但是,當我使用以下代碼行時:

PendingIntent pendingIntent = 
PendingIntent.getActivity(getApplicationContext(), 0, intent, 
Intent.FLAG_ACTIVITY_NEW_TASK);

它說:

必須是以下一項或多項:PendingIntent.FLAG_ONE_SHOT,PendingIntent.FLAG_NO_CREATE,PendingIntent.FLAG_CANCEL_CURRENT,PendingIntent.FLAG_UPDATE_CURRENT,Intent.FILL_IN_ACTION,Intent.FILL_IN_DATA,Intent.FILL_IN_INS ,Intent.FILL_IN_CLIP_DATA

誰能告訴我為什么會這樣,也許可以提出解決辦法?

提前致謝。

如果您查看文檔| PendingIntent.getActivity()getActivity()方法flags的最后一個參數只能具有以下int類型的標志:

FLAG_ONE_SHOT
FLAG_NO_CREATE
FLAG_CANCEL_CURRENT
FLAG_UPDATE_CURRENT
Intent.fillIn()支持的任何標志是:
FILL_IN_ACTION
FILL_IN_DATA
FILL_IN_CATEGORIES
FILL_IN_PACKAGE
FILL_IN_COMPONENT
FILL_IN_SOURCE_BOUNDS
FILL_IN_SELECTOR
FILL_IN_CLIP_DATA

因此,您不能在PendingIntent.getActivity()方法中使用Intent.FLAG_ACTIVITY_NEW_TASK ,因此必須在Intent中將其用作啟動標志。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM