Android實現(xiàn)app開機自啟動功能
本文實例為大家分享了Android實現(xiàn)app開機自啟動的具體代碼,供大家參考,具體內容如下
最近要做個大屏的開發(fā)板程序,需要長期穩(wěn)定運行,并開機自啟運行此軟件。
廢話不多說,上代碼
開機自啟需要廣播檢測,權限 android.permission.RECEIVE_BOOT_COMPLETED
1、AndroidManifest.xml中加入兩行代碼,紅色代碼
<?xml version="1.0" encoding="utf-8"?> <manifest xmlns:android="http://schemas.android.com/apk/res/android" ? ? xmlns:tools="http://schemas.android.com/tools" ? ? package="包名"> ? ? ? <uses-permission android:name="android.permission.ACCESS_WIFI_STATE" /> ? ? <uses-permission android:name="android.permission.CHANGE_WIFI_STATE" /> ? ? <uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" /> ? ? <uses-permission android:name="android.permission.CHANGE_NETWORK_STATE" /> ? ? <uses-permission android:name="android.permission.INTERNET" /> ? ?<!-- ? ?開機自啟動--> ? ? <uses-permission android:name="android.permission.RECEIVE_BOOT_COMPLETED" /> ? ? ? <application ? ? ? ? android:allowBackup="true" ? ? ? ? android:icon="@drawable/timg" ? ? ? ? android:label="@string/app_name" ? ? ? ? android:roundIcon="@drawable/timg" ? ? ? ? android:supportsRtl="true" ? ? ? ? android:theme="@style/AppTheme"> ? ? ? ? <activity android:name=".MainActivity"> ? ? ? ? ? ? <intent-filter> ? ? ? ? ? ? ? ? <action android:name="android.intent.action.MAIN" /> ? ? ? ? ? ? ? ? ? <category android:name="android.intent.category.LAUNCHER" /> ? ? ? ? ? ? </intent-filter> ? ? ? ? </activity> ? ? ? ? <activity android:name=".NetWorkActivity"></activity> ? ? ? ? <!-- 程序自啟動廣播 --> ? ? ? ? <receiver android:name="com.wisdtour.interact.Broadcast.MyBroadcastReceiver" ? ? ? ? ? ? > ? ? ? ? ? ? <intent-filter> ? ? ? ? ? ? ? ? <action android:name="android.intent.action.BOOT_COMPLETED"/> ? ? ? ? ? ? ? ? <category android:name="android.intent.category.LAUNCHER" /> ? ? ? ? ? ? ? ? <category android:name="android.intent.category.HOME" /> ? ? ? ? ? ? </intent-filter> ? ? ? ? </receiver> ? ? </application> ? </manifest>
2、編寫廣播接收者
import ...; ? //開機自啟動 public class MyBroadcastReceiver extends BroadcastReceiver { ? ? private final String ACTION_BOOT = "android.intent.action.BOOT_COMPLETED"; ? ? ? @Override ? ? public void onReceive(Context context, Intent intent) { ? ? ? ? Log.e("TAG", intent.getAction()); ? ? ? ? Toast.makeText(context, intent.getAction(), Toast.LENGTH_LONG).show(); ? ? ? ? ? /** ? ? ? ? ?* 如果 系統(tǒng) 啟動的消息,則啟動 APP 主頁活動 ? ? ? ? ?*/ ? ? ? ? ? if (ACTION_BOOT.equals(intent.getAction())) { ? ? ? ? ? ? Intent intentMainActivity = new Intent(context, MainActivity.class); ? ? ? ? ? ? intentMainActivity.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK); ? ? ? ? ? ? context.startActivity(intentMainActivity); ? ? ? ? ? ? Log.e("TAG", "開機完畢~------啟動MainActivity"); ? ? ? ? ? ? Toast.makeText(context, "開機完畢~", Toast.LENGTH_LONG).show(); ? ? ? ? } ? ? } ? ? }
3、在設置中,允許程序自啟動(或各種攔截軟件中), 否則將被攔截(一般沒有重啟應該就是被攔截了)
4、重啟試試
以上就是本文的全部內容,希望對大家的學習有所幫助,也希望大家多多支持腳本之家。
相關文章
深入Understanding Android ContentProvider詳解
本篇文章是對Android ContentProvider進行了詳細的分析介紹,需要的朋友參考下2013-05-05Android實現(xiàn)TextView兩端對齊的方法
這篇文章主要介紹了Android實現(xiàn)TextView兩端對齊的方法,需要的朋友可以參考下2016-01-01詳解Android開啟OTG功能/USB?Host?API功能
這篇文章主要介紹了Android開啟OTG功能/USB?Host?API功能,本文給大家介紹的非常詳細,對大家的學習或工作具有一定的參考借鑒價值,需要的朋友可以參考下2022-07-07