分为三步:
- 在AndroidManifest.xml文件中定义广播和声明权限
- 实现自定义广播类
- 接收到广播后,设置Activity的启动模式
在AndroidManifest.xml文件中定义广播和声明权限
<uses-permission
android:name="android.permission.RECEIVE_BOOT_COMPLETED"
</uses-permisiion>
<receiver
android:name=".broadcastReceiver"
android:enabled="true"
android:exported="true"
<intent-filter
android:priority="1000">
<action android:name="android.intent.action.BOOT_COMPLETED"/>
</intent-filter>
</receiver>
实现自定义广播类,并设置启动模式
public class broadcastReceiver extends BroadcastReceiver{
@Override
public void onReceive(Context context,Intent intent){
if(intent.getAction().equals("android.intent.action.BOOT_COMPLETED"){
Intent intent=new Intent(context,MainActivity.class);
//Activity的启动模式,必不可少
intent.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
context.startActivity(intent);
}
}
}
MainActivity.class 就是要Launch的类
注:如果该程序安装到SD卡,请在清单文件中添加
<manifest
package=""
android:installLocation="internalOnly">