就在昨天google悄悄放出了android N预览版,对于普通还在用4.4的用户,这可能不是什么重要的事 ,但是对于开发者这就要注意了。

这里主要分享对 Android N 的适配大家可能要注意什么。

还记得 6.0 对 Apache Http 库的废除导致的应用崩溃吗?

还记得 6.0 中 MAC id 始终返回为空导致的唯一 id 混合生成算法大幅失效吗?

1. Android 中 Java 的实现向 OpenJDK 8 迁移

Android 是站在 Linux 和 Java 肩膀上快速成长的,在运行时依赖 Oracle JDK,早在 2010 年甲骨文就起诉谷歌侵权 Java。在 N 中 Google 采用 OpenJDK 8 作为 Java 的实现,在 Java 实现上的一些差别可能导致应用出问题。如:

(1) ArrayList 实现中的私有属性 array 被移除

反射使用该属性的需要注意下。

(2) 随机数种子调用可能出错

Crypto 安全提供商在 OpenJDK 中不提供,而它在大家调用 SecureRandom.setSeed() 设置随机种子时会用到,OpenJDK 中需要通过 SecretKeySpec 去直接加载原始密钥或者使用真正的密钥导出函数。

2. JNI 中不允许调用非公有 API

JNI 中不允许调用非公有 API,由于命名空间的变化,在 Android N 上运行会崩溃,需要切换到对应公有 API。

3. “老人机的适配”

Android N 允许用户设置显示密度,有点像老人机模式。需要测试 App 在 sw320dp 密度下显示是否正常,及配置变更后应用是否会有异常。

4. 后台优化——三个广播被禁止监听或发送

(1) CONNECTIVITY_CHANGE 广播

对 targetVersion 设置为 Android N 的 App,在后台时不再能接收到 CONNECTIVITY_CHANGE 广播,前台不影响。

(2) ACTION_NEW_PICTURE 和 ACTION_NEW_VIDEO 广播

所有运行在 Android N 上的 App 不能发送或是接收新增图片(ACTION_NEW_PICTURE)和新增视频(ACTION_NEW_VIDEO) 的广播。

5. 权限改动

(1) GET_ACCOUNTS 权限被废弃

对 targetVersion 设置为 Android N 的 App,GET_ACCOUNTS 权限被废弃。

(2) 增加 ACTION_OPEN_EXTERNAL_DIRECTORY 权限

这个感觉就是对部存储设备写权限的保护,需要用户同意,说不定以后就慢慢废弃 WRITE_EXTERNAL_STORAGE 权限了。

6. 更严格的 Doze 模式

大家知道在 Android 6.0 中,在手机关屏且静止时,Doze 模式通过推迟 CPU 和网络操作延长底池寿命。而 Android N 则在手机关屏时就会一定程度限制 CPU 和网络操作,进入 Doze 模式一段时间后进一步限制 WakeLock、Alarm、GPS 和 Wi-Fi 扫描等,做好迎接休眠状态下更多功能受限导致的 bug 吧,哈哈。

7. 自带 ICU4J 库的子集

更方便 App 的全球化了

适配 Android N 需要注意什么相关推荐

  1. Android 10 vivo,更快更安全,vivo产品经理宣布:iQOO将首批适配Android 10正式版

    今天,谷歌一年一度的I/O 2019开发者大会如期举行.此次大会除了多款重磅新产品,新一代系统Android Q(10)beta版本的更多新功能也被揭开.除了支持5G网络.针对折叠屏这样的大屏设备进行 ...

  2. Android应用安装apk版本升级,适配Android 8.0和Android 10.0下载安装,shell命令安装APK

    shell命令安装 /*** 安装apk** @param path apk文件路径*/ public void installAPK(String path) {Log.i(TAG, "i ...

  3. 三星s4 android 6.0吗,快了 三星手机适配Android 6.0时间公布

    快了 三星手机适配Android 6.0时间公布 2016年01月26日 00:04作者:董岩编辑:董岩文章出处:泡泡网原创 分享 作为全球范围内无可争议的安卓手机巨头之一,三星在为其旗下手机适配安卓 ...

  4. Android8.0 学习(15)---适配Android 8.0

    Android O 迁移(适配Android 8.0) 现在我们介绍下 Android O新的改动: 通知 在 Android 8.0 中,我们已重新设计通知,以便为管理通知行为和设置提供更轻松和更统 ...

  5. android 开发对gif解码(适配android 4.2、4.3、4.4版本)

    android 开发对gif解码(适配android 4.2.4.3.4.4版本) 使用方法: public class ImageInputActivity extends Activity imp ...

  6. android 7 apk 安装程序,Android安装apk文件并适配Android 7.0详解

    Android安装apk文件并适配Android 7.0详解 首先在AndroidManifest.xml文件,activity同级节点注册provider: android:name="a ...

  7. RxHttp 完美适配Android 10/11 上传/下载/进度监听

    1.前言 随着Android 11的正式发布,适配Android 10/11 分区存储就更加的迫切了,因为Android 11开始,将强制开启分区存储,我们就无法再以绝对路径的方式去读写非沙盒目录下的 ...

  8. 华为android o适配名单,华为给出首批升级名单,这8款华为手机率先适配Android Q 10系统...

    原标题:华为给出首批升级名单,这8款华为手机率先适配Android Q 10系统 昨天,在谷歌的I/O大会上,谷歌正式向消费者介绍了Android Q 10系统中的新功能,除了自家的Pixel设备率先 ...

  9. 小米适配android o机型,小米公布部分机型安卓O/P适配进度及新适配计划

    10月25日消息 今天,小米公布了MIUI安卓版本的适配进度以及2018年Q4适配计划,一起来了解一下. 根据小米的公告,目前已经适配Android O/P的机型以及截至2018年12月将做适配.内测 ...

  10. android os 1.5 下载地址,技德Remix OS 1.5发布 适配Android 5.0

    原标题:技德Remix OS 1.5发布 适配Android 5.0 ~2015年5月15日,技德科技在其位于北京的办公室,为即将于6月正式上线的Remix OS 1.5系统召开了新品媒体沟通会.官方 ...

最新文章

  1. 数字化正在使CIO职责发生变化
  2. 浅谈对Fragment的认识
  3. 【MM配置】Delivery Costs 交货成本
  4. 克隆人不只出现在科幻电影里?阿里虚拟美女“俪知”亮相
  5. css实现元素居中的常见方法
  6. android 焦点分发,Android TV 焦点分发原理解析
  7. chrome全屏隐藏状态栏_PS技巧丨18个让你相见恨晚的PS隐藏技巧!
  8. DllMain加载其他DLL造成的死锁问题及其解决办法
  9. 为什么 Redis 默认 16 个库?90%以上程序员不知道!
  10. 华为手机 图标消失_华为手机升级EMUI 10后解决Google Play“消失”教程
  11. 【控制】《自动控制原理》胡寿松老师-第8章-非线性控制系统分析
  12. e会学c语言程序设计基础网课答案,C程序设计(双语版)习题答案
  13. 每日必应壁纸API接口源码
  14. Preface Numbering序言页码
  15. 九江高考2021成绩查询,2021九江市地区高考成绩排名查询,九江市高考各高中成绩喜报榜单...
  16. 如何提取PDF文件中的一页或几页——转载,真好用
  17. Centos Linux 和 CentOS Stream比较
  18. Vue3中如何进行页面局部刷新,组件刷新
  19. 应用程序无法正常启动(0xc000007b)的解决办法
  20. Markdown Pad出现HTML渲染错误(HTML Rendering Error)的解决方法,Markdown Pad弹窗报错

热门文章

  1. 基于python毕业设计毕设课题选题参考
  2. 67.220.92.12 /forum index.php,http://67.220.92.21/forum/inde PHP静态类
  3. simplest_ffmpeg_streamer加注释版
  4. lab2 binary bomb 详解
  5. 【DP + 思维】A Question of Ingestion Gym - 101673G
  6. 道闸系统 无法连接消息服务器,道闸系统常见故障处理
  7. 联想e470加装固态硬盘_联想e470能不能加固态硬盘?
  8. linux上删除rime方案_超强的输入法:rime的配置(linux)
  9. 深入理解哈希表(JAVA和Redis哈希表实现)
  10. 基于递归回溯算法实现八皇后游戏问题