Android應用程序開機開機啓動

  有很過狀況都須要Android程序開機自啓,也就是在手機開機以後立刻執行相應的Android程序。android

  實現的方法就是,在手機開機的時候接受相應的廣播,在Android程序中接受相應的廣播。安全

  第1步:創建自定義的BroadcastReceiver類。app

 1 package com.example.autostart;
 2 
 3 import android.content.BroadcastReceiver;
 4 import android.content.Context;
 5 import android.content.Intent;
 6 import android.widget.Toast;
 7 
 8 public class BootupReceiver extends BroadcastReceiver {
 9 
10     @Override
11     public void onReceive(Context context, Intent intent) {
12         Toast.makeText(context, "App started", Toast.LENGTH_LONG).show();
13         // ---start the main activity of our app---
14         
15         Intent i = new Intent(context, MainActivity.class);
16         i.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
17         context.startActivity(i);
18     }
19 }

  第2步:修改AndroidManifest.xml文件。ide

  添加收取到開機廣播的權限。spa

1 <uses-permission android:name="android.permission.RECEIVE_BOOT_COMPLETED" />

  註冊自定義的BroadcastReceiver類。code

1 <receiver android:name=".BootupReceiver" >
2   <intent-filter>
3     <action android:name="android.intent.action.BOOT_COMPLETED" />
4 
5     <category android:name="android.intent.category.DEFAULT" />
6   </intent-filter>
7 </receiver>

  這樣就基本完成了,我在電腦的AVD上實驗也成功了。但在我手機上開機沒有效果,我在手機管家中也設置了相應的權限,但就是不成功。在我把手機上安全軟件卸載後,程序自啓動成功了,我分析是安裝的手機管家在接受開機廣播後,就廣播結束了。xml

相關文章
相關標籤/搜索