android新bug,解析app配置文件时出错
2014-11-24 19:04
225 查看
1. 下面这段manifest代码,你可以扔到你的某个activity中去,然后跑一下这个app,看看效果
2.分析:
(1)你看到的现象应该是,android framework 停止运行,google+停止运行之类的。
(2)为什么呢?下面是无根据的推敲,尚未有心思看源码,但是经过试验,大概差不多吧。
首先mimeType,host这两个全局匹配,在加上一个scheme=“”,系统解析的时候肯定是没处理好,只要这三个条件并存,必定会解析出错。
出错的入口:通过上面三个data中任一个startActivity都会crash,使用packageManager使用以上任一data作为filter来queryIntent也会崩,实际上就是只要packageManager去读取存在这个filter的包的信息的时候,就会抛出Parcel解析异常,类型是空指针。
有兴趣的猿们可以去看看源码的实现,利用这个bug配合root权限可能会对手机上所有app的正常功能造成影响,所以赶紧给google提bug啊。
BTW,谁扒出了真正原因,麻烦给我分享一下哈。
<intent-filter> <action android:name="android.intent.action.VIEW"/> <data android:mimeType="*/*"/> <data android:host="*"/> <data android:scheme=""/> </intent-filter>
2.分析:
(1)你看到的现象应该是,android framework 停止运行,google+停止运行之类的。
(2)为什么呢?下面是无根据的推敲,尚未有心思看源码,但是经过试验,大概差不多吧。
首先mimeType,host这两个全局匹配,在加上一个scheme=“”,系统解析的时候肯定是没处理好,只要这三个条件并存,必定会解析出错。
出错的入口:通过上面三个data中任一个startActivity都会crash,使用packageManager使用以上任一data作为filter来queryIntent也会崩,实际上就是只要packageManager去读取存在这个filter的包的信息的时候,就会抛出Parcel解析异常,类型是空指针。
有兴趣的猿们可以去看看源码的实现,利用这个bug配合root权限可能会对手机上所有app的正常功能造成影响,所以赶紧给google提bug啊。
BTW,谁扒出了真正原因,麻烦给我分享一下哈。
相关文章推荐
- android启动过程配置文件的解析与语法
- android启动过程配置文件的解析与语法
- android 配置文件解析各个文件的内涵
- AndroidManifest.xml配置文件解析二
- 【Android开发日记】之入门篇(十)——Android应用配置文件解析
- android 配置文件解析
- Android安装包apk文件在某些版本操作系统上安装解析包出错问题的解决办法
- AndroidManifest配置文件解析之二——<manifest>
- App.config和Web.config配置文件的配置节点的解析
- AndroidManifest.xml配置文件解析一
- Android配置文件Manifest.xml如何被加载、解析的
- [android开发IDE]adt-bundle-windows-x86的一个bug:无法解析.rs文件--------rs_core.rsh file not found
- android启动过程配置文件的解析与语法
- maven(android-maven-plugin3.8.0)打包apk无法启动,apklib依赖包的资源索引出错(R文件与主模块冲突)问题解析
- App.config文件出错,配置系统未能初始化。
- android启动过程配置文件的解析与语法
- Android App开发记录 —配置文件的功能
- Android上解析.plist配置文件的xml解析器
- Android读取init.rc配置文件parse_config函数解析
- Android 配置文件 AndroidManifest 解析