Android如何監聽開機廣播和關機廣播

2021-08-07 18:39:54 字數 1834 閱讀 6285

專案背景:在錄影過程中,遇到關機事件,想要監聽關機操作,從而停止錄影,退出程式。

一、監聽開機廣播

android

系統啟動完成後會發出啟動完成廣播(

android

.intent.action.boot_completed),所有註冊了接收啟動完成廣播的接收器(broadcastreceiver)都會收到此廣播。

1、在androidmanifest.xml檔案裡新增授予應用程式訪問系統開機事件的許可權

<

uses-permission

android:name

="android.permission.receive_boot_completed"

/>

2、編寫系統發出的開機啟動完成廣播的接收器。自定類繼承broadcastreceiver類,**如下:

public

class

bootbroadcastreceiver 

extends

broadcastreceiver   

}  } 

3、在androidmanifest.xml檔案裡註冊廣播接收器

<

receiver

android:name

="com.android.test.bootbroadcastreceiver"

>

<

intent-filter

>

<

action

android:name

="android.intent.action.boot_completed"

/>

<

category

android:name

="android.intent.category.home"

/>

intent-filter

>

receiver

>

二、監聽關機廣播

android系統提供了與開機廣播對應的關機廣播,在系統即將關閉時發出此廣播。

1、編寫在系統即將關閉時發出的廣播的接收器。自定類繼承broadcastreceiver類,**如下:

public

class

shutdownbroadcastreceiver 

extends

broadcastreceiver   

}  } 

2、在androidmanifest.xml檔案裡註冊廣播接收器

<

receiver

android:name

="com.android.test.shutdownbroadcastreceiver"

>

<

intent-filter

>

<

action

android:name

="android.intent.action.action_shutdown"

/>

<

category

android:name

="android.intent.category.home"

/>

intent-filter

>

receiver

>

注:開機關機操作有三種方式:

1、重新啟動,關閉後立刻又開機。

開機啟動完成和即將關機時發出的廣播,都可以接收到。

2、單純關機操作

即將關機時發出的廣播接收不到。

3、單純開機操作

開機啟動完成發出的廣播時可以接收到的。

Andoird 監聽開機廣播和關機廣播

目錄 一 監聽開機廣播 二 監聽關機廣播 三 測試結論 android系統啟動完成後會發出啟動完成廣播,所有註冊了接收啟動完成廣播的接收器都會收到此廣播。1.自定義開機廣播類 desc 開機廣播 created by jack on 2020 6 6 17 20 public class bootb...

監聽開機廣播開啟service

listrunningserviceinfolist manager.getrunningservices 200 for activitymanager.runningserviceinfo info runningserviceinfolist intent.action time tick每隔...

Android開機廣播和關機廣播

有些時候我們需要我們的程式在系統開機後能自動執行,這個時候我們可以使用android中的廣播機制,編寫乙個繼承broadcastreceiver的類,接受系統啟動關閉廣播。如下 author coolszy date 2011 6 14 blog public class bootcompleted...