开机自启动
来源:互联网 发布:阳光灿烂的日子知乎 编辑:程序博客网 时间:2024/06/04 18:10
app开机自启动
1.开机广播
import android.content.BroadcastReceiver;import android.content.Context;import android.content.Intent;import com.yusong.changzhoumetroline1.utils.ServiceUtils;/**开机广播监听- create by feisher on 2017/4/9- Email:458079442@qq.com */ public class BootCompleteReceiver extends BroadcastReceiver { @Override public void onReceive(Context context, Intent intent) { if(intent.getAction().equals(Intent.ACTION_BOOT_COMPLETED)){ ServiceUtils.RunActivity(context); } } }
2.启动定制的app(工具类中的方法)
/** * 判断应用程序是否是活动的,不是活动的,打开程序 * @param context */public static void RunActivity(Context context) { ActivityManager am = (ActivityManager) context .getSystemService(Context.ACTIVITY_SERVICE); //5.0以下手机可以使用此方法 if (Build.VERSION.SDK_INT < Build.VERSION_CODES.LOLLIPOP) {//小于安卓5.0 List<RunningTaskInfo> list = am.getRunningTasks(100); for (RunningTaskInfo info : list) { if (!info.topActivity.getPackageName().equals(context.getPackageName())) { runApp(context); } } } //5.0以上手机可以使用此方法,6.0以上权限被禁,暂无办法 if (Build.VERSION.SDK_INT < Build.VERSION_CODES.M) { List<ActivityManager.RunningAppProcessInfo> processInfos = am.getRunningAppProcesses(); boolean isRun = false; for(ActivityManager.RunningAppProcessInfo processInfo : processInfos) { if (processInfo.importance ==ActivityManager.RunningAppProcessInfo.IMPORTANCE_FOREGROUND){ isRun = processInfo.processName.equals(context.getPackageName()); } } if (isRun ==false) { runApp(context);//启动应用 } }} private static void runApp(Activity context) { Intent ootStartIntent = new Intent(context,MainActivity.class);//我们应用的启动页面 ootStartIntent.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK); context.startActivity(ootStartIntent); }
3.别忘了要配置清单文件
<uses-permission android:name="android.permission.GET_TASKS" /><uses-permission android:name="android.permission.READ_PHONE_STATE" /><receiver android:name=".app.BootCompleteReceiver"> <intent-filter android:priority="1000"> <action android:name="android.intent.action.BOOT_COMPLETED" /> <category android:name="android.intent.category.HOME" /> </intent-filter></receiver>
阅读全文
0 0
- 【开机自启动】开机自启动应用程序
- 程序开机自启动
- symbian开机自启动
- 开机自启动
- 程序开机自启动
- 程序开机自启动
- oracle10g 开机自启动
- Symbian开机自启动
- Android开机自启动
- Android开机自启动。
- samba 开机自启动
- 开机自启动程序
- 开机自启动
- 开机自启动
- 【Android】开机自启动
- 开机自启动tomcat
- MFC开机自启动
- 【Android】开机自启动 .
- OceanBase由于合并操作导致事务被杀死的情况。
- GraphX SVDPlusPlus Java源码
- 基本数据结构-->堆
- Linux dd 命令
- 第一个QNX程序(Run)
- 开机自启动
- angularjs的聚焦行为
- 【Java EE】Eclipse项目 部署路径问题
- Codeforces 214D Numbers【思维+Dp】
- android 实现多级文件夹树界面(带线条)
- [IOS开发]判断设备型号
- 超详细 Java使用freemarker模板技术导出word
- webrtc中YUV红蓝反色-------反转方式
- 就鹿晗宣布恋情导致微博宕机事件浅谈大型网站高可用性架构