项目android 6.0,7.0 版本适配问题

记录一下项目中遇到andoid 6.0以上版本的适配问题,懒癌发作好多该总结的拖拖拉拉就忘了。
参考的博文:
http://www.tuicool.com/articles/zYniuyZ
http://blog.163.com/insightinto@126/blog/static/67383690201402455048495/
http://blog.csdn.net/lmj623565791/article/details/50709663

之前项目没有考虑到android 6.0 及以上版本的适配问题,后来再APP中加百度lbs地图时,遇到华为荣耀8定位不了的问题。
1 android 6.0以上的部分危险权限需要通过运行时动态申请。
2 android 6.0对应的api 23,将android编译版本换成23,才可以找到@TargetApi(value = Build.VERSION_CODES.M) Build.VERSION_CODES.M表示android 6.0
3 之前把最低版本设为api 16,发现代码中指定编译版本为android 6.0 也即Build.VERSION_CODES.M时找不到,将编译api改为23后,出现一些兼容错误。例如:
(1) android sdk 23,Google 移出了Apache HttpClient相关的类,推荐使用HttpUrlConnection,如果需要继续使用Apache HttpClient,需要在libs中添加org.apache.http.legacy.jar
和HttpClient一样,HttpResponse类也被移除了,解决方法如上所述,jar文件位置在sdk目录下\platforms\android-23\optional文件夹中
(2) android 6.0 The method sin(float) is undefined for the type FloatMath 报错
Android6.0使用 Math.floor 代替 FloatMath.floor 即可
(3) The method initializeScrollbars(TypedArray) is undefined for the type PLA_AbsListView
initializeScrollbars android 6.0中该方法不存在,使用反射机制找到被屏蔽

 final TypedArray a = context.getTheme().obtainStyledAttributes(new int[0]);
        try {
            // initializeScrollbars(TypedArray)
            Method initializeScrollbars = Android.view.View.class.getDeclaredMethod("initializeScrollbars", TypedArray.class);
            initializeScrollbars.invoke(this, a);
        } catch (Exception e) {
            e.printStackTrace();
        }

4 公司测试机比较少,也就后来才用高版本的手机测试,像华为荣耀8只开启app定位权限不够,还需要检测总开关定位服务有没有开启,如果没有开启总开关,检测定位权限都是无效的。所以首先检测总定位服务有没有开启。

/** 
     * 判断GPS是否开启,GPS或者AGPS开启一个就认为是开启的 
     * @param
  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
### 回答1: OPPO R9的Android 6.版本是一款非常流畅的操作系统,具有更好的性能和更多的功能。它提供了更好的多任务处理能力,更好的电池寿命和更好的安全性能。此外,它还提供了更好的用户体验,使用户可以更轻松地使用手机。总的来说,OPPO R9的Android 6.版本是一款非常出色的操作系统,值得用户使用。 ### 回答2: OPPO R9是一款搭载Android 6.0(Marshmallow)操作系统的手机,该系统带来了诸多新功能,使手机更加易用、稳定和安全。 Android 6.0的最大特点是Doze模式,能够在手机处于静止状态时减少耗电和网络流量。当你将手机放置一段时间后,这种模式就会被启动,手机会进入深度休眠状态,而只在接收到紧急通知时才会唤醒。另外,6.0还引入了应用权限的精细化控制,让用户能够更好地管理和控制自己的手机。 此外,6.0还带来了更灵活的通知管理,在锁屏和主屏幕上都可以查看通知,而且用户还可以自定义通知的优先级和提示方式。另外,6.0还优化了文件管理器和存储空间的管理,更方便用户管理和清理垃圾文件。 总之,OPPO R9搭载的Android 6.0系统功能更加全面,优化了电池续航表现和通知管理,提升了用户体验和安全性,是一款十分优秀的手机系统。 ### 回答3: oppo r9是OPPO手机品牌推出的一款手机,其所搭载的操作系统是Android6.0版本Android 6.0版本Android系统中重要的一个版本,它发行于2015年,代号为“Marshmallow”,这个版本有着很多的新增特性和改进的地方,其中最重要的一点是在安全方面做了大量的优化,保证了手机用户的数据隐私和手机安全,同时优化了电池续航能力,优化了声音效果和触摸体验等,提高了系统的稳定性和流畅度。 在OPPO R9中搭载Android 6.0版本后,它不仅保留了Android系统本身的优势,还结合了OPPO自身手机的特点进行了优化。例如OPPO R9搭载了自家的ColorOS 3.0系统,其UI界面设计简洁美观,搭载了丰富实用的智能功能和个性化定制设置,让用户拥有更加个性化的手机体验。 此外,OPPO R9作为一款音乐手机,其在音乐体验上也进行了优化,在系统层面对音质进行了优化,让人们在听歌时拥有更加流畅舒适的体验。 总之,OPPO R9搭载了Android 6.0版本的操作系统,该版本不仅优化了手机的安全性和电池续航能力,并且还融合了OPPO R9手机的特点进行了优化,从而提供了更好的用户体验。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值