您的位置首页>硬件>

月度开发者:Paranoid Android的Jake Weinstein

导读 大家好,我是极客范的本期栏目编辑小友,现在为大家讲解月度开发者:Paranoid Android的Jake Weinstein问题。高通开发者网络的九月开发者

音频解说

大家好,我是极客范的本期栏目编辑小友,现在为大家讲解月度开发者:Paranoid Android的Jake Weinstein问题。

高通开发者网络的九月开发者是杰克温斯坦。Jake的工作主要是安卓操作系统偏执安卓(AOSPA)项目。AOSPA是一款专为扩展系统而定制的ROM,致力于提升Android的魅力,并遵循Google Android开源项目的设计理念。不要被如此复杂的描述所迷惑。事实上,偏执团队专注于打造优雅简洁的UX,让用户享受简单的操作。AOSPA基于Code Aurora论坛安卓分支,支持高通骁龙充电设备。

业余时间,杰克是一名在圣路易斯攻读学位的学生。受到杰克的精力、奉献精神和编程技能的启发,我们和他谈论了他的项目和过程,以及他在编程偏执安卓系统时如何充分利用高通开发者网络(QDN)提供的工具。

能否先介绍一下偏执安卓项目?

偏执的安卓是一个由来自世界各地的开发者组成的团队,我们致力于打造一个基于安卓的免费开源操作系统。我们共同努力最大限度地提高性能、功耗、稳定性和整体体验。此外,我们还与Nextbit和Razer OS的Razer团队合作,升级到最新的安卓版本,提升性能和功能,修复漏洞。

有趣的事实——蜘蛛机器人的名字来自电台司令的一首歌。

项目是如何开始的?

以往二级市场上的一些安卓固件注重拥有最多的功能,而不是提供一些有意义的功能来提升用户体验。事实上,有时固件甚至与谷歌的原生安卓操作系统不兼容!开发偏执安卓的目的是把质量放在第一位。

你是如何参与偏执安卓项目的?

这话说得有意思。大约四年前,我开始转向深度开发,希望基于Code Aurora Forum的骁龙600能够为LG擎天柱G创建一个设备树和内核,我合作过的开发者之一是擎天柱G的偏执型安卓设备维护者,就在他的屏幕坏了的时候,他让我继续执行他的任务。我答应了,剩下的大家都知道了。从那以后,我从设备维护人员发展到了偏执安卓的核心领导者。

创新对你意味着什么?

创新是为了创新,改善人们的生活。我们的所有功能——,从PIE控件(基于手势的安卓导航系统)到颜色引擎(允许用户更改操作系统界面的原色和关键色),都是基于这一点创建的。

图:偏执的安卓PIE控件(左)和颜色引擎(右)。

你和你的团队从哪里获得工作灵感?

对我们来说,用户是灵感的巨大来源。他们经常给我们好的意见,指导我们如何改进产品。况且我们也是自己产品的用户,所以我们也会想象“如果能实现X岂不是很酷?”这些想法也是我们许多新想法的基础。

你用了什么QDN工具来实现这些想法?

我们主要使用高通骁龙LLVM编译器来提高设备的性能和用户体验。我们还使用特雷普恩电源分析器和高通骁龙分析器来分析和评估电源管理,以便CPU和调度程序能够做出更好的决策,最大限度地提高功耗和流畅度。

这些工具是如何帮助你开发的?

Trepn功率轮廓仪和骁龙轮廓仪用于实时观察中央处理器和图形处理器的负载和频率。我们经常使用这些数据来创建启发式程序。在一些搭载骁龙芯片的设备上(比如Nextbit Robin),我们可以在滚动和应用启动时增加CPU和GPU的频率,将任务迁移到高性能CPU集群,从而最大化性能,缩短延迟。

QDN工具大大加快了我们的发展。我们可以在几天内(而不是几个月内)开始使用最新的主要安卓版本,我们可以使用最新的安卓操作系统源代码,而不必试图保持旧代码的工作。

对于想学移动优化的同学有什么建议吗?

最好的方法是先识别问题。这是一个好的开始,因为它为你提供了解决问题的最终目标。

可以用一些优秀的程序来分析安卓设备,发现潜在的性能问题。我最喜欢的是Trepn Profiler,它可以在移动设备上实时显示CPU负载和频率,还有骁龙Profiler和Android Systrace工具。使用这些工具来检查应用程序或操作系统中的瓶颈,并更容易地找到解决方案。

另外,不要害怕寻求帮助。很多社区和专业开发者大概都解决过类似的问题,也愿意帮助你。如果你正在开发一个现有的开源项目,比如安卓开源项目,你可以把代码提交给评审系统,得到开发者的反馈,甚至合并你的代码。对我来说,将我的代码合并到一个安卓开源项目中,并在数百万台设备的下一个安卓版本中使用它是最有回报的地方。真的有用。

检查骁龙LLVM编译器、特雷普电源分析器和骁龙分析器。这是杰克的Github主页。

更多高通开发内容见:高通开发社区。

郑重声明:本文版权归原作者所有,转载文章仅为传播更多信息之目的,如作者信息标记有误,请第一时间联系我们修改或删除,多谢。