一个简单的小功能,用到了android的广播机制
public class MyReceiver extends BroadcastReceiver {
@Override
public void onReceive(Context context, Intent intent) {
String action = intent.getAction();
if (action.equals("android.intent.action.BOOT_COMPLETED")) {
//启动app
starUp(context);
}
}
private void starUp(Context context) {
// Intent mMainActivityIntent = context.getPackageManager(). 用包名启动
// getLaunchIntentForPackage(context.getPackageName());
Intent mMainActivityIntent = new Intent(context, MainActivity.class);跳转首页启动
mMainActivityIntent.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
context.startActivity(mMainActivityIntent);
}
AndroidManifest文件的配置
<receiver
android:name=".MyReceiver"
android:enabled="true"
android:exported="true">
<intent-filter android:priority="1000">
<action android:name="android.intent.action.BOOT_COMPLETED"></action>
</intent-filter>
添加权限
<uses-permission android:name="android.permission.INTERNET"/>
<uses-permission android:name="android.permission.RECEIVE_BOOT_COMPLETED"/>
添加应用程序的安装路径 不要装在sd卡装在内存卡中
<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
package="com.ewininfo.appqidong"
android:installLocation="internalOnly"
>
安装好,打开一次应用然后关机测试即可,还有一些手机可能会限制一些权限 直接用studio跑是没用的 要打包出来手动安装 打开开机启动的权限就OK