重庆设计网站,手机加速器,做水果网站需要多钱,品质好的网站制作一、Android L 后 ART替换dalvik
Dalvik是Google公司自己设计用于Android平台的虚拟机。 Dalvik虚拟机是Google等厂商合作开发的Android移动设备平台的核心组成部分之一。 它可以支持已转换为** .dex格式**的Java应用程序的运行#xff0c;.dex格式是专为Dalvik设计的一种压缩…一、Android L 后 ART替换dalvik
Dalvik是Google公司自己设计用于Android平台的虚拟机。 Dalvik虚拟机是Google等厂商合作开发的Android移动设备平台的核心组成部分之一。 它可以支持已转换为** .dex格式**的Java应用程序的运行.dex格式是专为Dalvik设计的一种压缩格式适合内存和处理器速度有限的系统。 Dalvik 经过优化允许在有限的内存中同时运行多个虚拟机的实例并且每一个Dalvik 应用作为一个独立的Linux 进程执行。独立的进程可以防止在虚拟机崩溃的时候所有程序都被关闭。
即Android Runtime ART 的机制与 Dalvik 不同。在Dalvik下应用每次运行的时候字节码都需要通过即时编译器just in time JIT转换为机器码这会拖慢应用的运行效率而在ART 环境中应用在第一次安装的时候字节码就会预先编译成机器码使其成为真正的本地应用。这个过程叫做预编译AOT,Ahead-Of-Time。这样的话应用的启动(首次)和执行都会变得更加快速。
ART有什么优缺点呢 优点 1、系统性能的显著提升。 2、应用启动更快、运行更快、体验更流畅、触感反馈更及时。 3、更长的电池续航能力。 4、支持更低的硬件。缺点 1.机器码占用的存储空间更大字节码变为机器码之后可能会增加10%-20%不过在应用包中可执行的代码常常只是一部分。比如最新的 Google APK 是 28.3 MB但是代码只有 6.9 MB。 2.应用的安装时间会变长。
tips现在智能手机大部分都可以让用户选择使用Dalvik还是ART模式。当然默认还是使用Dalvik模式。用法设置-辅助功能-开发者选项开发人员工具-选择运行环境不同的手机设置的步骤可能不一样
Android 各个版本适配
https://www.jianshu.com/p/bac6cbedf0d3
5.0 (API 21)新特性—2014年Lollipop
全新的Material Design设计风格。支持64位ART虚拟机。 放弃了之前一直使用的Dalvik虚拟机改用了ART虚拟机实现了真正的跨平台编译。todo弄懂为何 https://www.cnblogs.com/ganchuanpu/p/9321682.html引入RecyclerViewtodo它的优点。 Android ListView与RecyclerView对比浅析新增悬挂式Notification。 相较于普通式和折叠式Notification需要拉下通知中心才可以查看的交互悬挂式直接显示在屏幕上方并且焦点不变仍然在用户操作的界面上不会打断用户的操作过几秒会消失。Android 5.0 支持对Notification设置显示等级的能力。通知黑白图标引入更加灵活的Toolbar取代ActionBar
6.0 (API 23) 新特性—2015年Marshmallow 统一支付标准Android Pay。 指纹支持。 Doze电量管理。 手机静止不动一段时间后会进入Doze电量管理模式提高续航时间。 APP Links。 加强了软件间的关联支持点击链接跳转到对应的Apptodoscheme调起 Now on Tap 长按Home键激活Now on Tap他会识别当前屏幕上的内容并创建Now卡片。 【重点】运行时权限管理。 targetSdkVersion 23。 分位Normal Permissions和Dangerous Permissions。 ActivityCompat.checkSelfPermissions()请求低于6.0的版本次方法默认返回值为PackManager.PERMISSION_GRANTED。 onRequestPermissionsResult()回调结果。 如果用户选择了『不在询问』下次则不会弹框而是直接处理拒绝后的逻辑。 取消支持 Apache HTTP 客户端
7.0 (API 24)新特性—2016年Nougat
多窗口模式分屏模式 进入多窗口的Activity生命周期变化会先onDestroy销毁随后重建停在onPause状态。推出多窗口的Activity生命周期变化接着上面onPause-onDestroy随后正常重建。禁用多窗口模式在manifest.xml中配置android:resizeableActivityfalseData Server 一种流量保护机制启用Data Server后系统将拦截后台应用的数据使用。改进的Java8语言支持。 支持java8可以使用lambda表达式等。自定义壁纸 设置壁纸时可以选择是设置桌面还是锁屏壁纸。快捷回复 在通知中快捷回复。快速设置 下拉通知栏顶部有edit按钮可以对菜单进行自定义添加、删除、拖动排序。其它Daydream VR、后台省点、Unicode 9支持和全新的emoji表情符号、Google Assistant。FileProvider7.0 的通知栏改变了样式增加了小图标还可以显示通知数
8.0 (API 26) 新特性—2017年Oreo
【重点】通知中心 所有通知都必须分到一个渠道即新增NotificationChannel。画中画PIP支持 一种特殊的多窗口模式常用于视频播放。自适应启动器图标 桌面icon在不同的设备型号上显示为不同的形状。后台执行限制 后台service限制。广播限制除了有限的例外情况应用无法使用清单注册隐式广播。后台位置信息限制 为降低耗电量后台应用检索用户当前位置信息的频率会得到限制。其它自动填充框架、自动调整TextView的大小、WebView API、多显示器支持通知分渠道
9.0 (API 28) 新特性—2018年Pie
全面支持全面屏 通过DisplayCutout类可以确定非功能区域的位置和形状这些区域不应显示内容。动画 引入AnimatedImageDrawable类用于显示GIF和WebP动画图像。利用Wi-Fi RTT进行室内定位。隐私变更 限制后台访问设备传感器限制通过WiFi扫描检索到的信息等。其它机器学习HDR VP9视频、HEIF图像压缩和Media API、对使用非SDK接口的限制。刘海屏幕强制https请求
10.0 (API 29) 新特性—2019年Q
5G支持。支持可折叠设备。【重点】暗黑主题。手势导航。 全面屏手势操作。智能回复。 通过机器学习预测你在回复消息时可能会说些什么。用户隐私。给用户更多应用程序控制权。 提供仅这一次、应用使用时授权等选择。ART优化 添加了一种垃圾回收机制节省垃圾回收的时间帮助在低版本设备上顺畅运行。机器学习更新。夜间模式存储 分区
11.0 (API 30)新特性—2020年R
短信 更新进提供更加友好的交互。权限和隐私 在Android10的用户隐私基础上新增了位置、麦克风和摄像头的一次性权限许可。内置屏幕录制。适配不同设备。 折叠屏支持优化增加铰链角度传感器API等。高刷新率支持。网络优化。 新增『动态计量API』如果检测到连接到无限5G信号将可以访问最高质量的视频和图片。强制执行存储分区
12.0 (API 31)新特性—2021年(S)
原生的ImageDecoder支持GIF和WebP格式。支持圆角。 Display.getRounderCorner()获取屏幕圆角的详细信息。更易用的模糊、色彩滤镜等特效。 View.setRenderEffect(RenderEffect) 将特效直接应用于视图限制对MAC地址的访问。应用覆盖控制。 可以控制是否允许在自己的内容上显示这些覆盖图层调用Window#setHideOverlayWindows()表明不允许TYPE_APPLICATION_OVERLAY的窗口显示。应用无法关闭系统对话框。 弃用了 ACTION_CLOSE_SYSTEM_DIALOGS intent 操作。Activity/BroadcastReciver/Service 声明了Filter则必须显示设置android:exported属性。必须为每个PendingIntent设置可变性。后台应用无法再启动前台服务。请求精确位置需同时申请 ACCESS_FINE_LOCATION 和 ACCESS_COARSE_LOCATION 权限 13.0 (API 33)新特性—2022年(T)
细分媒体权限将 READ_EXTERNAL_STORAGE 细分为IAMGES、VIDEO、AUDIO权限若设置 targetSdk33 则此项必需适配WebView调整废弃setAppCacheEnabled与setForceDark方法 若设置 targetSdk33 则此项必需适配静态广播注册注册静态广播时需设置对其他应用的可见性 若设置 targetSdk33 则此项必需适配通知权限新增运行时通知权限POST_NOTIFICATIONS 若设置 targetSdk33 则此项必需适配Wi-Fi 新增 NEARBY_WIFI_DEVICES 运行时权限 若设置 targetSdk33 则此项必需适配身体传感器后台权限新增 BODY_SENSORS_BACKGROUND 运行时权限 若设置 targetSdk33 则此项必需适配剪切板内容隐藏新增内容隐藏API 根据业务需求选择性适配非 SDK 接口的限制 若设置 targetSdk33 则此项必需适配
14.0 (API 33)新特性—2022年(T) 进程只能杀死自己的后台进程 说明从Android 14开始当应用调用 killBackgroundProcesses() 时该API只能杀死应用自己的后台进程。如果传入其他应用的包名该方法对其他应用的后台进程没有影响。 前台服务类型是必填项 说明Android 14 为目标平台则必须指定适当的前台服务类型。与以前的 Android 版本一样可组合使用多个类型。 Android 14(U)适配攻略 - 简书