Re: [新闻] 解读| 华为方舟编译器是如何实现Android

楼主: jeff40108 (死得腥羶艳油剂是他)   2019-04-26 14:03:56
一个程式要在不同型号的手机上跑,要有不同的设定
所以同一个App下载到不同手机还要编译+安装
华为就是先编译完直接下载执行码,但每一个不同型号的手机都要各自优化
对系统程式(Andriod本身)而言当然很好,对其他App就不实际
: 按照华为方面的说法,采用华为编译器之后,提升效果如下:
: EMUI 9.1 仅仅对系统组件System Server 应用了方舟编译器之后,系统流畅速度提升了24%,系统响应速度提升了44%;
: 第三方应用(目前采用了新浪微博极速版)的操作流畅度提升了60%。
这边的盲点在于系统编译跟优化耗时耗人力
等到android 11,12出来时没人会管你的旧手机
跟iOS更新一样,你就永远别更新
: 不可忽视的是,实际上,要想实现华为所言的效果,就首先需要第三方的应用开发者采用方舟编译器对自家的App 提前进行改造,从而能够上架华为应用商店——这也是余承东在4 月11 日的发布会呼吁开发者积极参与的原因。
就是要开发者自己优化,但优化的版本只能在同型手机上跑
真的在写App都比较注重相容性,老板才懒的优化哩
: 除了代码编译,方舟编译器也提供了更高效的内存机制,它与Android 内存回收的不同之处在于:
: 内存管理是程序开发与运行时需要重点考虑的部分,也和系统流畅度息息相关。Android 在内存回收上采用集中回收机制,发声全局回收时更需要暂停应用,这也是随机卡顿的根因之一。而方舟编译器提供了更高效的内存回收机制,回收时无需暂停应用,随时用随时回收,大大提高运行速度。
同上,还是要开发者优化
: 另外,在方舟编译器的编译环境下, 还可以对代码进行优化。目前,由于Android ART 的AoT 和JIT 动态编译因为是运行在手机上,受资源所限,因而只能使用简单的优化算法。而方舟编译器由于是在应用开发阶段进行编译,所以可以允许不同应用灵活采用不同的编译优化方案,而且因为在开发环境编译不会受到手机性能的限制,可以使用更多先进的优化算法,从而使得每个应用的性能达到最佳。
: 2019,全面开源
开源不等于安全
编译后的机器码会比Java更难分析
即使编译器本身安全,也无法阻止开发者加入恶意程式码
Google 本身也不支持,所以这些App也不会在商城上架
讲白了这个编译器只是为了摆脱Google
优化、监控、和谐、赚上架费、广告一举多得
作者: david7112123 (Ukuhama)   2019-04-26 16:56:00

Links booklink

Contact Us: admin [ a t ] ucptt.com