第7章Android Broadcast Receiver組件_第1頁(yè)
第7章Android Broadcast Receiver組件_第2頁(yè)
第7章Android Broadcast Receiver組件_第3頁(yè)
第7章Android Broadcast Receiver組件_第4頁(yè)
第7章Android Broadcast Receiver組件_第5頁(yè)
已閱讀5頁(yè),還剩28頁(yè)未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說(shuō)明:本文檔由用戶(hù)提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡(jiǎn)介

1、Page 27.1Broadcast及BroadcastReceiver概述7.2自定義BroadcastReceiver7.3有序廣播7.4接收系統(tǒng)內(nèi)置廣播事件7.5使用Notification和NotificationManager通知用戶(hù)7.6鬧鐘AlarmManagerPage 3發(fā)送廣播sendBroadcast(intent)接收廣播。四喜丸子之一-廣播接收者Broadcast Receiver。 類(lèi)似于事件處理。不過(guò)事件處理是同一個(gè)程序內(nèi)部,而廣播的處理機(jī)制則是系統(tǒng)級(jí)別的(可用于不同應(yīng)用程序之間)。 實(shí)現(xiàn)方式為: 寫(xiě)個(gè)類(lèi)繼承BroadcastReceiver,覆蓋方法onRece

2、ive() 在配置文件中配置Page 4要發(fā)送廣播給廣播接收者,同樣需要信使Intent。系統(tǒng)內(nèi)置了一些與廣播接收者有關(guān)的Intent Action vider.Telephony.SMS_RECEIVED Intent.ACTION_TIME_CHANGED(時(shí)間改變時(shí)) Intent.ACTION_BOOT_COMPLETED(系統(tǒng)啟動(dòng)完成時(shí)) Intent.ACTION_PACKAGE_ADDED(添加包時(shí)即安裝程序) android中使用package來(lái)區(qū)分不同的應(yīng)用程序 Intent.ACTION_BATTERY_CHANGED(電量低時(shí))Page 57.1Br

3、oadcast及BroadcastReceiver概述7.2自定義BroadcastReceiver7.3有序廣播7.4接收系統(tǒng)內(nèi)置廣播事件7.5使用Notification和NotificationManager通知用戶(hù)7.6鬧鐘AlarmManagerPage 6書(shū)上實(shí)例不好。沒(méi)有體現(xiàn)出在不同應(yīng)用程序之間發(fā)送廣播和接收廣播。實(shí)例:Page 7在第一個(gè)Android項(xiàng)目中,發(fā)送廣播Page 8在第二個(gè)Android項(xiàng)目中,接收廣播Page 9實(shí)例注意事項(xiàng) 將SelfBroadcastA項(xiàng)目和SelfBroadcastB 項(xiàng)目部署在模擬器上 運(yùn)行SelfBroadcastA項(xiàng)目 SelfBro

4、adcastA執(zhí)行發(fā)送廣播命令Page 10實(shí)例注意事項(xiàng) 兩個(gè)項(xiàng)目都需要安裝到Android系統(tǒng)中,才能看到效果 兩個(gè)項(xiàng)目的包名不能一樣,否則后安裝的那個(gè)將覆蓋掉前面那個(gè)。(Android用包來(lái)區(qū)分應(yīng)用程序)Page 11Page 127.1Broadcast及BroadcastReceiver概述7.2自定義BroadcastReceiver7.3有序廣播7.4接收系統(tǒng)內(nèi)置廣播事件7.5使用Notification和NotificationManager通知用戶(hù)7.6鬧鐘AlarmManagerPage 13Broadcast被分為如下兩種: Normal Broadcast(普通廣播) O

5、rdered Broadcast(有序廣播)Context提供如下兩個(gè)方法發(fā)送廣播 sendBroadcast() sendOrderedBroadcast()Page 14 項(xiàng)目實(shí)例演示 SortedBroadcast課堂編程實(shí)現(xiàn)Page 157.1Broadcast及BroadcastReceiver概述7.2自定義BroadcastReceiver7.3有序廣播7.4接收系統(tǒng)內(nèi)置廣播事件7.5使用Notification和NotificationManager通知用戶(hù)7.6鬧鐘AlarmManagerPage 16除了可以自定義廣播事件之外,Android還提供了許多標(biāo)準(zhǔn)的廣播Actio

6、n。這些廣播由系統(tǒng)在某種情形下自動(dòng)發(fā)出,程序員只需要定義BroadcastReceiver進(jìn)行接收即可。Page 17系統(tǒng)內(nèi)置廣播Action常量常量名稱(chēng)含義ACTION_BOOT_COMPLEMENTED系統(tǒng)啟動(dòng)完成時(shí)(開(kāi)機(jī))ACTION_TIME_CHANGED系統(tǒng)時(shí)間改變ACTION_DATE_CHANGED日期改變ACTION_BATERY_LOW電量低.添加包卸載包.Page 18實(shí)例(Sysbroadcast)-設(shè)置系統(tǒng)時(shí)間,自定義廣播接收者來(lái)接收時(shí)間被改變事件。Page 19實(shí)例-設(shè)置系統(tǒng)時(shí)間,自定義廣播接收者來(lái)接收時(shí)間被改變事件。注冊(cè)BroadcastReceiverPage

7、20實(shí)例-設(shè)置系統(tǒng)時(shí)間,自定義廣播接收者來(lái)接收時(shí)間被改變事件。Page 21實(shí)例-SMSBroadcast-SMSBroadcast。Page 227.1Broadcast及BroadcastReceiver概述7.2自定義BroadcastReceiver7.3有序廣播7.4接收系統(tǒng)內(nèi)置廣播事件7.5使用Notification和NotificationManager通知用戶(hù)7.6鬧鐘AlarmManagerPage 23廣播接收者收到廣播之后,如何獲取用戶(hù)的注意(通知用戶(hù))? 簡(jiǎn)單的Toast.makeText().show()并不行. 例如:手機(jī)電量不足,如何接收了該廣播之后,來(lái)提示用戶(hù)

8、呢?應(yīng)該閃光、發(fā)聲、振動(dòng)等. 此時(shí)最好的選擇是使用通知Notification和通知管理者NotificationManagerPage 24Page 25項(xiàng)目實(shí)例1演示 Notification1代碼分析,使用Notificaiton發(fā)送通知的步驟: 調(diào)用getSystemService(NOTIFICATION_SERVICE)獲取系統(tǒng)的NotificationManager 通過(guò)構(gòu)造器創(chuàng)建一個(gè)Notificaiton對(duì)象 為Notificaiton設(shè)置各種屬性 通過(guò)NotificationManager發(fā)送NotificaitonPage 26由于使用Notification和Notif

9、icationManager是做可視化操作,一般需要在Activity中寫(xiě)代碼。涉及知識(shí): Intent和PendingIntent: Intent是你的意圖,比如你想啟動(dòng)一個(gè)Activity,就會(huì)通過(guò)Intent來(lái)描述啟動(dòng)這個(gè)Activity的某些特點(diǎn),讓系統(tǒng)找到這個(gè)Activity來(lái)啟動(dòng),而不是啟動(dòng)別的。Activity.StartActivity(intent)就會(huì)立即啟動(dòng)這個(gè)Activity PendingIntent呢?Penging中文意思就是:待定,將來(lái)發(fā)生或來(lái)臨。PendingIntent不像Intent那樣立即發(fā)生,而是在合適的時(shí)候由另外的程序去觸發(fā)所包裝的Intent。Page 27Intent和PendingIntent:Page 28Notification和NotificationManager及BroadcastReceiver綜合實(shí)例(與BroadcastReceiver結(jié)合) Notification2Page 297.1Broadcast及BroadcastReceiver概述7.2自定義BroadcastReceiver7.3有序廣播7.4接收系統(tǒng)內(nèi)置廣播事件7.5使用Notification和NotificationManager通知用戶(hù)7.6鬧鐘AlarmManagerPage 30實(shí)現(xiàn)方式: 獲取AlarmManager ge

溫馨提示

  • 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶(hù)所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶(hù)上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶(hù)上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶(hù)因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

最新文檔

評(píng)論

0/150

提交評(píng)論