现在有一个项目需要做一个开机自启动的功能,这个怎么实现呢?一顿咔咔咔百度,发现很多推荐 使用监听系统开机广播BOOT_COMPLETED,CONNECTIVITY_CHANGE

来实现。那好吧  我也这么来做。先写一个RootReceiver  extends BroadcastReceiver   ,在onReceiver中  做自己想做的逻辑   ,然后在mianfest中注册 BOOT_COMPLETED,CONNECTIVITY_CHANGE。记得添加开机启动权限

<uses-permission android:name="android.permission.RECEIVE_BOOT_COMPLETED" />
<receiver
    android:name=".RebootReceiver"
    android:directBootAware="true"
    android:enabled="true"
    android:exported="true"
    tools:targetApi="n">
    <intent-filter>
        <action android:name="android.intent.action.BOOT_COMPLETED" />
        <action android:name="android.intent.action.LOCKED_BOOT_COMPLETED" />
        <action android:name="android.intent.action.USER_PRESENT" />
        <action
            android:name="android.net.conn.CONNECTIVITY_CHANGE"
            />
    </intent-filter>
</receiver>
public class RebootReceiver extends BroadcastReceiver {@Override
    public void onReceive(Context context, Intent intent) {MLod.Log("e", null, "RebootReceiver", "onReceive: ->" + intent.getAction());
        if (intent.getAction().equals(Intent.ACTION_BOOT_COMPLETED) ||ConnectivityManager.CONNECTIVITY_ACTION.equals(intent.getAction()) ||intent.getAction().equals(Intent.ACTION_LOCKED_BOOT_COMPLETED) ||intent.getAction().equals(Intent.ACTION_USER_PRESENT)) {
Log.i("TAG","");
}}}

基本上就是上面三步骤  然后开始调试了   我用的手机是vivo。(很坑爹)   然后调试了   我是在开机后  不启动app  然后切换网络  发现根本监听不到系统广播,这是为什么呢?继续一顿咔咔咔百度,原来3.1后  Android  不让app在安装后一次都没有开启后 监听系统广播,系统会把安装的app设为stopped状态。 那好吧 既然这样  我先启动一下,这时候  可以监听到网络状态变化  一看  有戏,然后开关机试试 ,又不行了,坑爹阿 ,为啥呢  不是开机一次就可以了吗?遇到这情况 ,换个手机试试把,就是这样,换个手机 有时候 不是自己代码的问题。   换了个pad,没问题了 可以监听。  现在又突然了一个需求 ,需要监听一个自定义的广播,那只要在mainfest里面加上action ,然后不就可以了嘛。我把action一开始写在一个intent-filter里面 ,然后又监听不到系统广播了,又一顿咔咔咔百度谷歌,尝试了下  把系统广播 和自定义广播  action  分开用intent-filter 写 ,没问题了,原因不太懂,有大神知道可以告诉一下。

Android监听系统广播 和自定义广播遇到的问题相关推荐

  1. android 监听系统广播

    监听手机.手表或其他设备系统的广播 提示:查看系统发送过什么广播 一.用数据线连接设备 保证设备和电脑连接成功 二.使用 adb shell dumpsys | findstr BroadcastRe ...

  2. Android监听按键锁屏广播

    目录 java版 kotlin版本 java版 不需要xml代码,直接java代码注册就好. public class MainActivity extends AppCompatActivity { ...

  3. uniapp 系统广播、自定义广播插件 Ba-Broadcast

    简介(下载地址) Ba-Broadcast 是一款可监听系统广播的uniapp插件,如息屏.亮屏.声音.电量等等.支持监听系统广播:支持自定义广播:支持发送广播. 支持系统广播(支持设备支持的所有广播 ...

  4. Android - 接收、监听系统短信广播

       广播接收者(BroadcastReceiver)是安卓的四大组件之一.类似于日常生活中的广播,安卓系统中的广播也有发送者和接收者.发送者通常是系统的应用程序,比如电池电量低.开关机.有电话或短信 ...

  5. Android中BroadCaseReceiver的基本用法(一)之监听系统广播

    注册广播分为:动态注册和静态注册.动态注册是通过Java代码注册,静态注册是指在AndroidManifest.xml中注册. 如何创建一个广播接收器? 1.创建一个类继承自BroadCastRece ...

  6. Android 监听Home键按键事件

    Android 监听Home键按键事件 标签(空格分隔):Android Home键 在Android开发中有很多按键事件需要在App中捕获从而做出一些针对性的操作,例如返回键,音量键等都可以直接在d ...

  7. 为什么监听不到开机广播action.BOOT_COMPLETED

    为什么监听不到开机广播action.BOOT_COMPLETED 1. 说明 Android手机开机后,会发送android.intent.action.BOOT_COMPLETED广播,监听这个广播 ...

  8. android 监听手机电量变化

    今天,简单讲讲如何监听手机电量的变化. 监听电量是不能静态注册的. 后来上网搜索,发现有五个不能静态注册的广播,这里记录一下,免得下次再后知后觉的发现并惊讶于自己的笨拙. 不能静态注册的广播: and ...

  9. android 监听手机开机

    今天,简单讲讲  android 监听手机开机. 需求描述:有些时候,我们需要我们的程序在开机后能自动运行,在系统即将关闭时,能写入一些记录到指定的文件里. 一.开机广播监听: Android系统 ...

最新文章

  1. 用Matplotlib轻松复刻分析图,看看哪个城市买房最自由
  2. 多多客DOODOOKE 1.x升级2.x指南
  3. SwiftTour基础学习(五)控制流
  4. 三角形外接圆圆心坐标
  5. oracle 10g下载百度云地址
  6. 小米手机各种检测代码
  7. landesk 卸载_landesk怎么卸载,软件卸载不了怎么办
  8. 阿里云ACA、ACP、ACE认证考试常见问题
  9. php 导出 设置多表头,PHP Excel 导出文件,自定义表头
  10. Word替换重复的内容
  11. 波恩大学Cyrill Stachniss SLAM课程
  12. win10怎么更新显卡驱动_Intel发布核显新驱动:支持Win10 H2更新、11代酷睿狂喜-Intel,核显,驱动,Win10 ——快科技(驱动之家旗下媒体)-...
  13. 硬件电路设计之电源电路的设计
  14. PHP学习:PHP+Apache 安装/配置
  15. vmware 连接云服务器协议,vmware怎么连接云服务器
  16. 【SQL学习笔记】《SQL进阶教程》1.2
  17. Oracle数据库(表、查询语句、条件查询)的使用
  18. 道德网安-菜鸟免杀教程
  19. 栈溢出漏洞CVE-2020-8423复现
  20. Realm-Android

热门文章

  1. 二零零六年九月十八Sniffer学习手册完成
  2. 如何做好知识付费课程?
  3. Linux mysql忽略大小写
  4. Java 通过经纬度获取地理位置
  5. 情人节怎么发祝福?来看看这些英文邮件及信息
  6. python从入门到走火入魔_Python 函数式编程:从入门到走火入魔
  7. PTA L2-014列车调度
  8. 布依格电信部署Ciena 6500分组光平台
  9. 淺談 Java VM 發展
  10. 简约资源网源码 可做下载站或资源站