写点什么

Jack 和 Jill:旨在更高性能的新版安卓编译器

  • 2014-12-07
  • 本文字数:722 字

    阅读完需:约 2 分钟

Saikoa 的技术总监 Eric Lafortune,DexGuard 的创造者,在安卓 5.0 修订版 1(API 21.1)的 SDK 中发现了一些新的工具,主要是名为 Jack 和 Jill 的两个编译器。这些工具旨在简化安卓的编译流程。

谷歌在 KitKat 版本中引入了安卓运行时(ART)环境作为实验性的工具,并且在Lollipop 版本中用它替换了Dalvik 作为默认的运行时环境。在设备上安装应用程序时,ART 获取DEX 字节码然后将其转化为本地代码,进行预编译的同时又兼顾设备本身的特性。而现在,谷歌似乎正在进一步增强编译流程。

据Lafortune 介绍,Jack 是一个基于Eclipse Java 编译器和 ProGuard 的工具。ProGuard 是一个调优工具,通过删除无用的代码缩减代码库,通过重命名类、方法和属性混淆代码库。虽然 ProGuard 已经被整合到安卓的构建系统中,并且在生成发布包时推荐使用,开发者仍然可以自主选择是否要使用它。如果 Jack 成为官方工具,开发者就必须要强制使用这个工具,不过通过配置文件,他们对这个工具还是会有一定的控制权。

另外一个新工具 Jill 用于将 Java 库字节码转化成名为 Jayce 的中间字节码。Jack 对 Java 源码和 Jayce 字节码进行编译,生成经过优化的 DEX 字节码。据 Lafortune 描述,这两个编译器“看起来相当实用”,尽管 Jack 目前还不支持“ProGuard 的一些高级功能,例如移除日志代码”。

这两个编译器目前还不支持 Java 8,不过他们力争“向后兼容并且开放将来扩展的可能性”,Lafortune 补充到。开发者可以在使用安卓plugin 1.0.0 RC 的Gradle 构建中试用这些编译器。

作为谷歌提升其移动操作系统性能的又一次尝试,Jack 和Jill 能够生成更加优化的代码,尺寸更小并且可能是经过混淆的。

查看英文原文: Jack & Jill: New Android Compilers for More Performance

2014-12-07 00:033395
用户头像

发布了 75 篇内容, 共 62.9 次阅读, 收获喜欢 6 次。

关注

评论

发布
暂无评论
发现更多内容

虚拟网络设备性能优化

GousterCloud

Linux Kenel 虚拟网卡

Kafka 线程模型痛点攻克: 提升分区写入 2 倍性能

AutoMQ

Apache 云计算 大数据 kafka

掌握Linux虚拟网络设备:从基础到应用的全面指南

GousterCloud

Linux Kenel 网络设备

虚拟网络设备的真正使命:实现有控制的通信

GousterCloud

Linux Kenel

透明LED屏幕如何设计效果更好?

Dylan

技术 设计 系统 LED LED显示屏

Ascend C 自定义算子 Kernel Launch调用入门

华为云开发者联盟

人工智能 华为云 华为云开发者联盟 企业号2024年4月PK榜 自定义算子开发

NineData创始人&CEO叶正盛受邀参加『数据技术嘉年华』的技术大会

NineData

数据库 数据复制 实践 NineData 技术原理

探索未来产业:新技术、新商业、新趋势

天津汇柏科技有限公司

未来产业

随易周刊第002期 - 四象

前端之虎陈随易

程序员 前端 Web 周刊 技术周刊

心态崩了,约了半个月,就只有3个面试!

王中阳Go

微服务 并发编程 面试题 面经 大厂面经

✅基于TTL 解决线程池中 ThreadLocal 线程无法共享的问题

派大星

ThreadLocal Java 面试题 互联网大厂面试

前端代码规范 - 日志打印规范

南城FE

JavaScript 前端开发 代码规范

虚拟网络设备与Linux网络协议栈

GousterCloud

Linux Kenel

虚拟网络设备的网络隔离机制:原理、意义与应用场景深度分析

GousterCloud

Linux Kenel 网卡

文心一言 VS 讯飞星火 VS chatgpt (232)-- 算法导论17.1 3题

福大大架构师每日一题

福大大架构师每日一题

Linux虚拟网络设备全景解析:定义、工作模式与实践应用

GousterCloud

Linux Kenel 设备

Linux虚拟网络设备:底层原理与性能优化深度解析

GousterCloud

Linux Kenel 设备驱动

Linux虚拟网络设备深度解析:使用场景、分类与开发者指南

GousterCloud

Linux Kenel 虚拟网卡

嵌入式会越来越卷吗?

芯动大师

嵌入式 嵌入式软件 嵌入式应用

深入了解商品口碑:淘宝评论API助力消费者明智选择

技术冰糖葫芦

API Explorer API 文档 pinduoduo API

常用Java代码混淆工具介绍及比较

雪奈椰子

体育赛事直播系统源码,用于搭建平台的价值与优势

软件开发-梦幻运营部

一键生成视频!用 PAI-EAS 部署 AI 视频生成模型 SVD 工作流

阿里云大数据AI技术

人工智能 阿里云 AI视频

虚拟网络设备与网络安全:深入分析与实践应用

GousterCloud

Linux Kenel 虚拟网卡

打造银行核心全栈国产化新模式,第三届数字金融技术创新与应用研讨会成功举办

先锋IT

阿里云佘俊泉:边缘云场景的探索与机遇

MasterInTech

异构计算 边缘云 云网融合

微服务架构下,如何通过弱依赖原则保障系统高可用?

京东零售技术

Java 架构 后端 企业号 4 月 PK 榜

解密组合监控:优化系统性能的关键策略

观测云

监控

LangChain Agent:赋予 LLM 行动力的神秘力量

蛋先生DX

#人工智能 LLM #LangChain AI Agent 企业号2024年4月PK榜

沙丘世界,如何抵抗勒索病毒的入侵?

白洞计划

网络安全

XML文档节点导航与选择指南

小万哥

xml 程序人生 编程语言 软件工程 前端开发

Jack和Jill:旨在更高性能的新版安卓编译器_Google_Abel Avram_InfoQ精选文章