Android应用程序可以实现开机时启动相关应用(如service等),Android系统在开机启动时会发出一个系统广播"android.intent.action.BOOT_COMPLETED",在接收到这个广播就可以实现开机自启动功能。

下面就是一个简单的开机启动的广播receiver

import android.content.BroadcastReceiver;import android.content.Context;import android.content.Intent;import android.util.Log;import com.feng.service.AndroidTestService;import com.feng.service.SecondService;/**  * @ClassName:BootReceiver  * @Description:广播监听程序 * @author:Android_Robot * @date:2011-11-26 08:44:33   */public class BootReceiver extends BroadcastReceiver {/** * Method name: onReceive 
* Description: please write your description
* Remark:
* @param context * @param intent
*/@Overridepublic void onReceive(Context context, Intent intent) {if (intent.getAction().equals("android.intent.action.BOOT_COMPLETED")) {Log.i("MyBootReceiver", "****** system boot completed ******");// ****** 启动一个Service ******Intent i= new Intent(); i.setClass(context, AndroidTestService.class); i.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK);context.startService(i); }}}

下面简单说下开机自启动失效问题

  1. 系统中没有注册receiver
    尽管这个问题几乎是不可能出现的,还是列出来吧,^_^
    在AndroidManifest.xml中注册receiver
  2. 没有Boot权限
    和上面一样,这个问题也是几乎不可能出现的
    添加权限
  3. 修改之后直接关闭模拟器,然后Run as ...
    Run as 是相当于先启动模拟器,然后再安装应用程序,虽然这种情况有时也会成功,但失败的情况也不少
    在测试这种开机启动的应用的时候不应该直接Run as...,应该在AVD中启动模拟器,如图
  4. 如下图所示

    这个问题烦了我很久,有这种Android实现开机自启动无效的问题,不妨参考下这种方法

更多相关文章

  1. Android(安卓)开关机动画
  2. Android中帧动画在Activity启动时自动运行的几种方式
  3. Android(安卓)8.0 Activity启动过程分析
  4. android adb和串口调试.
  5. Android系统启动流程(源码分析)
  6. 开发环境的搭建-----------Day01 2014-5-26
  7. android常用adb命令
  8. Android(安卓)无线启动过程分析 无线启动过程分析
  9. android 启动Activity的四种模式

随机推荐

  1. 关于Android中的uses-permission和uses-f
  2. 【整理】Android中的gravity和layout_gra
  3. 14天学会安卓开发(第十三天)Android多媒
  4. android的PreferenceActivity
  5. android 定时器,每秒变换一次图片!
  6. 利用android proguard混淆代码
  7. Android(安卓)Studio中获取SHA1或MD5的方
  8. Android(安卓)boot.img介绍
  9. Android中Local Service最本质的作用是什
  10. Android(安卓)application context/activ