五.App開機(jī)自啟動(dòng)的實(shí)現(xiàn)

前言

鑒于廣播應(yīng)用之廣泛,種類之繁多。那么今天我們就來講講開機(jī)廣播監(jiān)聽的相關(guān)知識(shí)吧。

今天涉及的內(nèi)容:

  1. Android實(shí)現(xiàn)app自啟動(dòng)監(jiān)聽通用做法
  2. 效果圖和項(xiàng)目結(jié)構(gòu)圖
  3. app自啟動(dòng)功能實(shí)現(xiàn)現(xiàn)狀

先來看看效果吧


1.gif

一.Android實(shí)現(xiàn)app自啟動(dòng)監(jiān)聽通用做法

在Android開發(fā)過程中,我們經(jīng)常會(huì)遇到一些變態(tài)需求。希望在手機(jī)一開機(jī)就自啟動(dòng)一個(gè)特定的app,并且希望這個(gè)app不能退出,只要設(shè)備在開啟狀態(tài)下,此app就處于霸屏狀態(tài)。
于是,大家想到的一個(gè)方法就是利用開機(jī)廣播來實(shí)現(xiàn)app的自啟動(dòng)。
下面就來講講app開機(jī)自啟動(dòng)的實(shí)現(xiàn)吧。

1. 申請(qǐng)監(jiān)聽開機(jī)啟動(dòng)廣播

在Androidmanifast.xml 中添加開機(jī)自啟動(dòng)權(quán)限:

<uses-permission android:name="android.permission.RECEIVE_BOOT_COMPLETED" />
2. 寫一個(gè)廣播接收器,并在onReceiver方法中做跳轉(zhuǎn)到app的操作

以寫的一個(gè)BootCompleteReceiver代碼為例:

public class BootCompleteReceiver extends BroadcastReceiver{
    
    @Override
    public void onReceive(Context context, Intent arg1) {
        LogUtil.i("=========開機(jī)自啟動(dòng)=========="+arg1.getAction());

        //啟動(dòng)app代碼
        Intent autoStart = new Intent(context, MainActivity.class);
        autoStart.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
        context.startActivity(autoStart);

    }
}
3. 在Manifast.xml 文件中注冊開機(jī)廣播接收器,并添加相對(duì)應(yīng)flag

在 manifast.xml 文件中注冊廣播

還有 57% 的精彩內(nèi)容
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請(qǐng)結(jié)合常識(shí)與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡書系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。
支付 ¥3.00 繼續(xù)閱讀

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容