`
scliu0718
  • 浏览: 52306 次
  • 性别: Icon_minigender_1
  • 来自: 成都
文章分类
社区版块
存档分类
最新评论

Android开机广播无效问题(手机Root后)

 
阅读更多

关于Android注册过开机广播而导致无响应的问题

先说说情景:

之前有做过一个开机启动某个模块,是通过广播接收开广播,并做自己的处理。

但是某些时刻发现此广播突然无效了,那怕是再通过其它 Action来启动 或者 动态注册同样如此。

后来突然发现一个出现此问题的手机有一个共同点,原来它们都被ROOT过。哭


原因

由于手机Root过,并且安装类似360手机卫士这样的手机管理软件。通过使用管理软件

禁用APP开机启动后(以360手机卫士4.3.4为例,在手机清理-自动启动的软件 中禁用),

引起的广播无法响应,个人大胆猜测是否被360禁用后该广播在响应时被拦截了(有知道原

理的盆友可以留言讨论一下)。

(注)以下的Action都会引起这个广播无效:

<action android:name="android.intent.action.BOOT_COMPLETED" />

<action android:name="android.net.conn.CONNECTIVITY_CHANGE" />

<action android:name="android.intent.action.PHONE_STATE" />

解决方法

在知道问题在哪就好办了,我采用的是笨办法,有两种方法:

1. 把开机启动广播和处理逻辑代码块分开,也就是说把开机广播只作为开机响应作用来用,响应后

只负责调用某个方法来干事就好,而其它地方下也可调用这个方法处理逻辑。

2. 也可以是把一个广播拆分为两个。把开机广播只作为开机响应作用来用,响应发一个处理逻辑的

广播(此广播才是干正事的),而其它情况下也可直接发处理逻辑的广播,而不会让整个功能瘫痪了。


分享到:
评论

相关推荐

    android手机root检测

    标题提到的"android手机root检测"是指检查Android设备是否已经获取了root权限的过程。这个过程对于应用开发者和安全专家来说尤其重要,因为他们需要确保其应用不会在被root的设备上运行,因为这可能会导致数据泄露或...

    Android手机一键Root原理分析

    Android手机一键Root原理分析,源码实例,SuperUser

    安卓ROOT工具-几乎可以ROOT所有android手机

    万能ANDROID系统ROOT工具,几乎可以ROOT所有ANDROID手机!

    Android 9 添加开机音乐

    通过ADB(Android Debug Bridge)将服务应用安装到你的设备上,或者在获得root权限后,可以通过文件管理器将其移动到/system/app或/system/priv-app目录,以使其成为系统应用。 步骤五:授予服务权限 在...

    Android root下修改设备分辨率

    5. **恢复方法**:如果修改后出现问题,可以尝试恢复备份的系统镜像,或者使用一些Root管理工具如SuperSU或Magisk进行系统还原。如果设备因错误修改而无法启动,可能需要通过fastboot模式或ODIN工具刷入新的系统固件...

    Android例子源码不弹框手机是否Root检测例子.zip

    Android可以直接运行一个底层命令,来判断是否root,但是这会带来一个问题,每次判断是否root都会弹出一个root请求框。这是十分不友好的一种交互方式,而且,用户如果选择取消,有部分手机是判断为非root的。这种方式...

    android智能手机百分百 root成功软件

    本教程将详细介绍如何在Android智能手机上实现100%成功率的root过程,以及使用的相关软件。 首先,我们来看“豌豆荚.exe”。豌豆荚是一款知名的Android设备管理工具,它可以帮助用户在电脑上管理手机应用、数据和...

    代码获取android开机启动时间,已经开机启动应用

    接下来,我们讨论如何在Android开机完成后接收到广播。Android系统提供了`BroadcastReceiver`类,用于监听系统广播事件,包括开机启动广播。创建一个名为`BootUpReceiver`的`BroadcastReceiver`,并在其`onReceive()...

    Android检查设备是否root的方法

    Android开发中有时需要判断手机是否已经root,这个类就是全面检查Android设备是否root的工具类,Android开发中有时需要判断手机是否已经root,这个类就是全面检查Android设备是否root的工具类,Android开发中有时...

    rk-android9.0-root补丁(rootservice方式).rar

    【标题】"rk-android9.0-root补丁(rootservice方式).rar"指的是针对Rockchip处理器平台的Android 9.0系统进行root权限获取的补丁包,采用了一种名为"RootService"的方法。RootService是一种在Android系统中实现...

    Android开机动画包bootanimation.zip

    5. **权限与安全**:在Android设备上更改开机动画可能需要root权限,因为这涉及到系统级别的改动。不正确的修改或使用不兼容的开机动画可能导致系统启动问题,因此在进行此类操作时应格外小心。 6. **动画编码**:...

    RK3399_android7.1_root(7.1 root补丁).rar

    RK远程提供的RK3399 Android7.1 root patch,有需要root的朋友,请下载,

    Android设备上非root的抓包实现方法(Tcpdump方法)

    由于Android系统的安全机制,大多数应用程序没有root权限,因此不能直接使用tcpdump工具进行抓包。然而,通过一些特殊的技术手段,我们可以在非root的Android设备上实现抓包功能。 首先,理解tcpdump的运行需求。...

    Android手机Root.apk

    该软件用于Android手机Root,可查看连接过的Wifi密码。

    索尼 android手机 无痛root

    【标题】"索尼Android手机无痛root"涉及的是在不造成设备损坏或数据丢失的情况下,对索尼Android手机进行超级用户权限获取的过程。Root是Android系统中的一个术语,它指的是允许用户获得系统的最高权限,以便可以...

    如何获得联通android手机root权限

    如何获得联通android手机root权限

    Android 模拟器永久root工具

    Android 模拟器永久root工具------包含 (android for img.rar、Android SU文件更新包.zip、RootExplorer.apkSuperuser.apk) 1、用android for img.rar里的android for img.exe打开 E:\SDK\platforms\android-8\...

    Android例子源码不弹框手机是否Root检测例子

    本文将详细探讨如何通过编程实现这一功能,主要基于提供的"Android例子源码不弹框手机是否Root检测例子"进行讲解。 首先,我们要明白Root权限是什么。在Android系统中,Root权限相当于Linux系统中的超级用户权限,...

    Android开机动画修改

    要修改Android开机动画,我们需要了解几个关键点,包括bootanimation.zip文件、desc.txt文件格式以及可能出现的问题及其解决方法。 首先,开机动画的修改主要涉及到`bootanimation.zip`文件。这是一个特殊的压缩包...

    android首次开机默认进入客户要求的桌面

    当我们谈论"Android首次开机默认进入客户要求的桌面"时,实际上是在讨论如何自定义Android设备的启动体验,使得用户在开机后不是进入预设的系统桌面,而是客户指定的第三方桌面应用。下面将详细介绍实现这一功能的...

Global site tag (gtag.js) - Google Analytics