PendingIntent學習筆記

寫在前面的話####

之前自己在網上查找了幾篇相關文章,在此基礎上打算寫一篇總結性的筆記汰规。寫之前心想先看一下Google的API蜜唾,結果看了之后發(fā)現(xiàn)API已經寫的非常明確了,所以就干脆把API復制過來了冗美。


  • PendingIntent可以看作是對Intent的一個封裝,但它不是立刻執(zhí)行某個行為析二,而是滿足某些條件或觸發(fā)某些事件后才執(zhí)行指定的行為粉洼。
  • PendingIntent的獲取
  1. PendingIntent getActivity (Context context, int requestCode, Intent intent, int flags, Bundle options)
    Retrieve a PendingIntent that will start a new activity, like calling Context.startActivity(Intent)

Note that the activity will be started outside of the context of an existing activity, so you must use the Intent.FLAG_ACTIVITY_NEW_TASK launch flag in the Intent.

  1. PendingIntent getService (Context context, int requestCode, Intent intent, int flags)
    Retrieve a PendingIntent that will start a service, like calling Context.startService()

The start arguments given to the service will come from the extras of the Intent.

  1. PendingIntent getBroadcast (Context context, int requestCode, Intent intent, int flags)
    Retrieve a PendingIntent that will perform a broadcast, like calling Context.sendBroadcast()

For security reasons, the Intent you supply here should almost always be an explicit intent, that is specify an explicit component to be delivered to through Intent.setClass


  • PendingIntent的參數(shù)說明
    拿第三種方式,廣播的形式說明下
    PendingIntent sentIntent = PendingIntent.getBroadcast(this, 0,sIntent, 0);
    第一個參數(shù)是上下文.
    第二個參數(shù)是每次requestcode不同,就能產生多個Pendingintent.
    第三個參數(shù)是用來存儲信息.
    第四個參數(shù)是對不同操作作標識.

getBroadcast(Context context, int requestCode, Intent intent, int flags)中的flags有幾種狀態(tài):

  1. FLAG_CANCEL_CURRENT:如果AlarmManager管理的PendingIntent已經存在,那么將會取消當前的PendingIntent叶摄,從而創(chuàng)建一個新的PendingIntent.
  2. FLAG_UPDATE_CURRENT:如果AlarmManager管理的PendingIntent已經存在,讓新的Intent更新之前Intent對象數(shù)據,例如更新Intent中的Extras,另外,我們也可以在PendingIntent的原進程中調用PendingIntent的cancel ()把其從系統(tǒng)中移除掉
  3. FLAG_NO_CREATE:如果AlarmManager管理的PendingIntent已經存在,那么將不進行任何操作,直接返回已經.
  4. FLAG_ONE_SHOT:該PendingIntent只作用一次.在該PendingIntent對象通過send()方法觸發(fā)過后,PendingIntent將自動調用cancel()進行銷毀,那么如果你再調用send()方法的話,系統(tǒng)將會返回一個SendIntentException.
最后編輯于
?著作權歸作者所有,轉載或內容合作請聯(lián)系作者
  • 序言:七十年代末漆改,一起剝皮案震驚了整個濱河市,隨后出現(xiàn)的幾起案子准谚,更是在濱河造成了極大的恐慌,老刑警劉巖去扣,帶你破解...
    沈念sama閱讀 221,695評論 6 515
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件柱衔,死亡現(xiàn)場離奇詭異樊破,居然都是意外死亡,警方通過查閱死者的電腦和手機唆铐,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 94,569評論 3 399
  • 文/潘曉璐 我一進店門哲戚,熙熙樓的掌柜王于貴愁眉苦臉地迎上來,“玉大人艾岂,你說我怎么就攤上這事顺少。” “怎么了王浴?”我有些...
    開封第一講書人閱讀 168,130評論 0 360
  • 文/不壞的土叔 我叫張陵脆炎,是天一觀的道長。 經常有香客問我氓辣,道長秒裕,這世上最難降的妖魔是什么? 我笑而不...
    開封第一講書人閱讀 59,648評論 1 297
  • 正文 為了忘掉前任钞啸,我火速辦了婚禮几蜻,結果婚禮上,老公的妹妹穿的比我還像新娘体斩。我一直安慰自己梭稚,他們只是感情好,可當我...
    茶點故事閱讀 68,655評論 6 397
  • 文/花漫 我一把揭開白布絮吵。 她就那樣靜靜地躺著弧烤,像睡著了一般。 火紅的嫁衣襯著肌膚如雪源武。 梳的紋絲不亂的頭發(fā)上扼褪,一...
    開封第一講書人閱讀 52,268評論 1 309
  • 那天,我揣著相機與錄音粱栖,去河邊找鬼话浇。 笑死,一個胖子當著我的面吹牛闹究,可吹牛的內容都是我干的幔崖。 我是一名探鬼主播,決...
    沈念sama閱讀 40,835評論 3 421
  • 文/蒼蘭香墨 我猛地睜開眼渣淤,長吁一口氣:“原來是場噩夢啊……” “哼赏寇!你這毒婦竟也來了?” 一聲冷哼從身側響起价认,我...
    開封第一講書人閱讀 39,740評論 0 276
  • 序言:老撾萬榮一對情侶失蹤嗅定,失蹤者是張志新(化名)和其女友劉穎,沒想到半個月后用踩,有當?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體渠退,經...
    沈念sama閱讀 46,286評論 1 318
  • 正文 獨居荒郊野嶺守林人離奇死亡忙迁,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內容為張勛視角 年9月15日...
    茶點故事閱讀 38,375評論 3 340
  • 正文 我和宋清朗相戀三年,在試婚紗的時候發(fā)現(xiàn)自己被綠了碎乃。 大學時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片姊扔。...
    茶點故事閱讀 40,505評論 1 352
  • 序言:一個原本活蹦亂跳的男人離奇死亡,死狀恐怖梅誓,靈堂內的尸體忽然破棺而出恰梢,到底是詐尸還是另有隱情,我是刑警寧澤梗掰,帶...
    沈念sama閱讀 36,185評論 5 350
  • 正文 年R本政府宣布嵌言,位于F島的核電站,受9級特大地震影響愧怜,放射性物質發(fā)生泄漏呀页。R本人自食惡果不足惜,卻給世界環(huán)境...
    茶點故事閱讀 41,873評論 3 333
  • 文/蒙蒙 一拥坛、第九天 我趴在偏房一處隱蔽的房頂上張望蓬蝶。 院中可真熱鬧,春花似錦猜惋、人聲如沸丸氛。這莊子的主人今日做“春日...
    開封第一講書人閱讀 32,357評論 0 24
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽缓窜。三九已至,卻和暖如春谍咆,著一層夾襖步出監(jiān)牢的瞬間禾锤,已是汗流浹背。 一陣腳步聲響...
    開封第一講書人閱讀 33,466評論 1 272
  • 我被黑心中介騙來泰國打工摹察, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留恩掷,地道東北人。 一個月前我還...
    沈念sama閱讀 48,921評論 3 376
  • 正文 我出身青樓供嚎,卻偏偏與公主長得像黄娘,于是被迫代替她去往敵國和親。 傳聞我的和親對象是個殘疾皇子克滴,可洞房花燭夜當晚...
    茶點故事閱讀 45,515評論 2 359

推薦閱讀更多精彩內容