概述
如何实现开机自启动?
1 添加广播类
public class BootReceiver extends BroadcastReceiver {
private static final String TAG = "BootReceiver";
public static final String ACTION_BOOT = "android.intent.action.BOOT_COMPLETED";
/**
* 给客户留一些时间去进行系统设置
*/
private static final int START_TIME = 3000;
@Override
public void onReceive(final Context context, Intent intent) {
Log.i(TAG, "开启了" + intent.getAction());
String action = intent.getAction();
if (null == action)
return;
if (action.equals(ACTION_BOOT)) {
// 10秒后进行自启动
new Handler().postDelayed(new Runnable() {
@Override
public void run() {
startApp(context);
}
}, START_TIME);
}
}
/**
* 开启APP
*/
private void startApp(Context context) {
Toast.makeText(context, "已开机", Toast.LENGTH_SHORT).show();
context.startActivity(context.getPackageManager()
.getLaunchIntentForPackage(context.getPackageName()));
}
}
2 清单文件中添加权限及注册广播
package="com.lugq.powerbootdemo">
android:allowBackup="true"
android:icon="@mipmap/ic_launcher"
android:label="@string/app_name"
android:roundIcon="@mipmap/ic_launcher_round"
android:supportsRtl="true"
android:theme="@style/AppTheme">
...
开机自启动验证
使用 adb 命令方式发送开机广播
adb shell am broadcast -a android.intent.action.BOOT_COMPLETED
兼容性
小米8 MIUI 11.0.3.0 (Android9.0)开机后1分多,成功自启动
注意事项
没有自启动的原因:
1 没有添加权限
2 应用安装到了sd卡内,安装在sd卡内的应用是收不到BOOT_COMPLETED广播的
3 手机上有管理自启动的软件会导致失败
源码
下方留言、简信或者发邮件给我哟
最后
以上就是清脆世界为你收集整理的android自动打开软件下载,Android 应用自启动的全部内容,希望文章能够帮你解决android自动打开软件下载,Android 应用自启动所遇到的程序开发问题。
如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。
发表评论 取消回复