Android系统开发过的大家不管是framework以上还是native,大家都会遇到过不同Android版本差异带来的问题,Deprecate这个词framework层接触比较多童鞋会见得相当多,甚至一些api还会有一些bug. 本人总结Android开发针对版本不同问题的个人心得:
1.首先查看官方文档和framework源码,这里推荐一个网址在线查看android各个系统版本的源 码http://grepcode.com/project/repository.grepcode.com/java/ext/com.google.android/android
2.排除项目工程原因,可以自己新建一个android app 单独使用,确认是否是项目工程原因
3.排除Android系统Rom问题,可以找不同rom测试结果
4.如果有同类产品使用了相同系统api,查看其它同类产品是否能正常工作.
5.阅读源码找出问题真正原因,是否是api bug,
(1) 如果是android api bug查看系统源码framework & native解决问题。
(2) 参看同类产品,或者系统应用实现代码(具体方式这边不再细说)
下面举例我遇到过的问题.
网页查找功能Android系统提供findAll这个接口,从官方文档上看这个接口只适用于api level 16一下findAll,api level 16及其以上使用findAllSync.
遇到问题是api level 16一下调用findAll 网页中查找到的文字并没有高亮。
1.首先查看官方文档h

在Android开发中,遇到WebView的findAll接口在API level 16及以上版本未高亮显示搜索结果的问题。通过查阅文档、创建测试工程、对比其他应用,确认为API bug。解决方法涉及研究源码,利用反射调用setFindIsUp方法实现高亮。
最低0.47元/天 解锁文章
4万+

被折叠的 条评论
为什么被折叠?



