zoukankan      html  css  js  c++  java
  • Android 4.0及以上版本接收开机广播BOOT_COMPLETED、开机自启动服务

    1、BootCompletedReceiver.Java文件

    public class BootCompletedReceiver extends BroadcastReceiver {  
      
        @Override  
        public void onReceive(Context context, Intent intent) {  
            // TODO Auto-generated method stub  
            Log.d("LibraryTestActivity", "recevie boot completed ... ");  
            context.startService(new Intent(context, TestService.class));  
        }  
    }  

    2、AndroidManifest.xml文件

    <uses-permission android:name="android.permission.RECEIVE_BOOT_COMPLETED" />  
      
    <receiver android:name=".BootCompletedReceiver">  
        <intent-filter>    
            <action android:name="android.intent.action.BOOT_COMPLETED" />    
        </intent-filter>  
    </receiver>  

    注意,一定要加上权限<uses-permission android:name="android.permission.RECEIVE_BOOT_COMPLETED" />

    否则就收不到广播咯。

    3、安装应用到你的手机后,启动一次该应用,那么下次开机就能收到BOOT_COMPLETED广播,并且就能看到TestService服务启动了。

    做了个测试到设置——>应用程序,找到刚才安装的应用,点击“强行停止”,那么重启手机后,就收不到BOOT_COMPLETED广播了。

    如果该应用被有些三方安全软件强制杀掉进程后,重启手机也会收不到BOOT_COMPLETED广播。

  • 相关阅读:
    [718. 最长重复子数组]
    排序算法--归并,堆,快速排序
    改进的插排--希尔排序
    排序算法--选泡插
    对封装继承多态的理解
    Servlet[springmvc]的Servlet.init()引发异常
    [面试题 16.18. 模式匹配]
    [124. 二叉树中的最大路径和](
    7.29_python_lx_day11
    7.28_python_lx_day18
  • 原文地址:https://www.cnblogs.com/prescheng/p/6058314.html
Copyright © 2011-2022 走看看