Android 大版本适配

本文详细解析了从Android 6到9的版本适配要点,包括权限管理、Doze模式、分屏支持、文件共享安全及通知渠道更新等,帮助开发者理解各版本核心变化,确保应用兼容性。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

1 市场份额

总结:
市场主要集中在6/7,厂商集中在对8/9的优化
B 所以熟悉android M/N的版本特性是基础,这块市场份额最大;
同时研究android O/P的新特性,来应对厂商最新手机版本
C 旧手机集中在4.4 以后,minSdkVersion设置为19,比较适用
然后我们将App targetSdkVersion改为对应的版本号6/7/8/9 (23M/24N/26O/28P),点击sync Now,开始版本的适配

适配前先了解各个Sdk 非常关键的差异性,如下分别说明:
2 Android 6 适配小结
完整变更介绍见这里,下面只列举个人非常典型的总结
https://developer.android.google.cn/about/versions/marshmallow/android-6.0-changes
A 【权限管理】首先最迫切的就是对动态权限的声明,仅仅manifest 是不够的,还需要requestPermissions动态权限
哪些需要申请,哪些不需要,比较多不容易记忆
没有权限就闪退,所以又不得不做
其实原则很简单:涉及用户隐私了就需要。比如拍照/相册/联系人/短信/定位/存储等
Android6.0动态权限列表、普通权限列表、特殊权限列表
B 【Doze模式】俗称打盹,为了更低的能耗逐渐限制后台的动作,Alarm开始延迟,之前与时间强相关的时钟或定时,就需要注意受Doze 模式的影响。
C 【弃用Apache HTTP 客户端】也就是HttpClient 向HttpURLConnection 转变,优化网络请求。影响App网络部分,包括使用的三方网络框架,需要考虑变更。或者 useLibrary 'org.apache.http.legcy'依旧使用遗产的方案
D 【APK 验证】Manifest中的文件如果没有,包被认为是损坏的。所以自己查一遍,养成好习惯
E 【强化硬件标识符访问权】之前通过wifi,蓝牙拿到mac地址,现在均拿不到,逐步强化对地址的管理

3 Android 7 适配小结
完整的变更见这里
https://developer.android.google.cn/about/versions/nougat/android-7.0-changes
A 【分屏模式】我们targetSDKVersion 切换到N, 则默认允许多窗口,可以关闭
android:resizeableActivity="true"
同一栈下,默认使用相同配置,A允许,B也会允许,除非显示设置
B 【应用间共享文件】通过URI 传递文件,将触发FileUriExposedException,需要使用FileProvider
【移除网络切换广播】移除隐私广播,非常重要
不再收到 Connectivity_action /Action_new_picture /Action_new_video
D 【sharePref 私有权限】shared_prefs 设置为外部可读写,将触发SecurityException

4 Android 8适配小结
完整的变更见这里
https://developer.android.google.cn/about/versions/oreo/android-8.0-changes
A 通知渠道,需要定义Notification Channel
B 前台服务,需要调用startForegroundService
C 未完待续

5 Android 9适配小结
https://developer.android.google.cn/about/versions/pie/android-9.0-changes-all
A 区分针对9.0的应用,与所有targetSdk 应用
B 未完待续

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

Ai小成

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值