取之有道——巧用Root权限 启动其他APP中的Activity
这次博主来分享一个很巧妙的办法来启动其他app中activity的方法。
首先说一下这样做的目的:最近博主在攻克一个技术难点,就是搞定某些三方系统中,对于应用权限的限制。为此给出用户指导,引导用户启动系统中的权限设置来设置信任。到此,问题就来了:我们不知道权限设定的包名,也不知道权限设置的activity的名字,如何启动到指定的界面呢?
今天我们就来解决这个问题。
首先,我们需要一台已经获取root权限了的手机。当然,模拟器之流也是可以考虑的。还有re(root explorer)文件浏览器,用来浏览androidmanifest.xml。这里注意的是,不要试图复制到电脑上查看,回是乱码的。
然后,我们开始通过包名来查找有可能的程序。由于博主手里用的测试机是华为的机器,因此以华为为例。其他厂商的手机请各位自行查找,方法应该是一致的。
使用re文件浏览器,获取读写权限,依次打开/system/app。在这里,你将会看到好多apk。由于re文件浏览器能够预览apk的图标,所以我们可以很轻松地通过软件图标,找到权限管理所属的apk文件。以华为最新的emui为例,权限管理所属的软件是手机管家,apk的文件名为:“hwsystemmanager.apk”。
使用re文件浏览器打开apk,选择查看,即可看到解压后的文件。也就可以直接找到androidmanifest.xml。继续使用re文件浏览器打开这个xml文件,其中的activity的名字便一览无遗了。
最后,找到正确的activity,启动它即可。
这样,就能够在用户指导的权限设置页给出正确的启动入口了。当然,此方法也适用于启动任何一个app中的activity,只要配置文件中的exported值不为false即可启动。
小小技巧,班门弄斧。不足之处,望路过大神多多指教。
上一篇: 怎么让面粉更劲道,做出来的食物更加好吃
下一篇: 哺乳期能喝橘子皮水吗,这里有答案!