《阿里巴巴Android开发手册》v1.0.1更新,优化部分内容和示例代码

简介: 春节余味尚未消,我们为移动开发者准备了一份迟到的新年礼物——《阿里巴巴Android开发手册》,继《阿里巴巴Java开发手册》之后,阿里巴巴开发规范家族又添一丁,「阿里巴巴Android开发规范」认证考试也同步上线。

--------------- 2018.3.6更新 ---------------

《阿里巴巴Android开发手册》首次公开后,我们收到了业界大量Android开发者的反馈,在广泛听取了各方意见之后,今天发布迭代版本v1.0.1,主要做了如下更新:

  1. 更新部分内容和示例代码;
  2. 完善参考文献并统一添加到附录;
  3. 增加钉钉交流群(见手册封底);
  4. 优化排版。

感谢大家的支持和反馈,此次建立钉钉群的目的是为了方便大家直接和项目组交流,也作为统一的渠道来收集大家的建议,我们也将不断完善手册内容,为Android开发提效。

手册免费下载:https://yq.aliyun.com/attachment/download/?id=5261
认证考试:https://edu.aliyun.com/certification/cldt04


春节余味尚未消,我们为移动开发者准备了一份迟到的新年礼物——《阿里巴巴Android开发手册》,继《阿里巴巴Java开发手册》之后,阿里巴巴开发规范家族又添一丁,「阿里巴巴Android开发规范」认证考试也同步上线。

_1

阿里Android开发经验结晶

2017年天猫双11,成交额再创新高达到1682亿元,其中无线交易额占比90%;2017年12月,钉钉在诞生1075天后,注册用户突破1亿;而在同期,闲鱼用户也突破了2亿……面对如此大的用户量和流量,这些App依然可以做到“丝般顺滑”。

在这背后,是阿里巴巴移动开发团队的不断探索和优化,久而久之,这些经验汇总成了一套完善的开发规范,指导工程师开发出体验好、性能优、稳定性佳、安全性高的App。

该开发规范在阿里内部经过了不断完善,现在整理成册,并向业界Android开发者开放,希望能够帮助企业和开发者少走弯路,提升Android开发的质量和效率。

规范内容概览

本手册以开发者为中心视角分为Java语言规范(遵循《阿里巴巴Java开发手册》),Android资源文件命名与使用,Android基本组件,UI与布局,进程、线程与消息通信,文件与数据库,Bitmap、Drawable与动画,安全以及其他等九大部分。

image

根据约束力强弱,规约依次分为强制、推荐、参考三大类:

  • 【强制】必须遵守,违反本约定或将会引起严重的后果;
  • 【推荐】尽量遵守,长期遵守有助于系统稳定性和合作效率的提升;
  • 【参考】充分理解,技术意识的引导,是个人学习、团队沟通、项目合作的方向。

对于规范条目的延伸信息中,增加了规范的解释说明和代码示例,“正例”提倡什么样的编码和实现方式,“反例”说明需要提防的雷区,以及错误案例,让开发者透彻理解每一条规范内容。

阿里技术大牛联袂推荐

淘宝技术负责人 庄卓然(花名南天):

车同轨,书同文,《阿里巴巴Android开发手册》既是高效合作的基础,也是深度创新的开始。

淘宝基础平台部负责人 吴志华(花名天施):

写出简洁优雅、性能好、兼容性考虑全面的Android代码是一件不容易的事情,更是优秀Android架构师功底所在。

淘宝资深技术专家 倪生华(花名玄黎):

稳定、体验优的客户端来源于一行行健壮的代码,手册沉淀了阿里多年的端侧经验,可以帮助Android工程师少走弯路。

淘宝高级无线开发专家 胡文江(花名白衣):

所贵唯实践,这是阿里巴巴集团Android开发同学在不断实践中总结出来的心血结晶,也是对Google公司Android最佳实践的有益补充。

关于认证考试

手册发布之际,「阿里巴巴Android开发规范」认证考试也同步上线,通过在线考试,检测你对手册中开发规范的掌握程度,并发放官方认证证书。

认证考试:https://edu.aliyun.com/certification/cldt04

致谢

阿里巴巴Android开发规范能够成册,离不开集团内移动开发工程师的大力支持,在此感谢大家的无私奉献和付出。

特别感谢《阿里巴巴Android开发手册》项目组成员,排名不分先后:芸墨(淘宝技术部)、矢亮(智能场景事业部)、游僧(淘宝技术部)、景宝(淘宝技术部)、邻云(闲鱼)、尚节(猫客技术部)等阿里移动开发工程师,特别感谢孤尽(《阿里巴巴Java开发手册》主要作者)对手册的指导。

最后

越早遵循统一的开发规范,团队就越受益,希望该手册能够为Android开发团队和开发者带来切实的帮助,同时,我们也呼吁广大Android开发者参与进来,不断完善该规范,您可以在评论处提交您的建议。

android_qr_2

目录
相关文章
|
1月前
|
Java Android开发
Android面试题经典之Glide取消加载以及线程池优化
Glide通过生命周期管理在`onStop`时暂停请求,`onDestroy`时取消请求,减少资源浪费。在`EngineJob`和`DecodeJob`中使用`cancel`方法标记任务并中断数据获取。当网络请求被取消时,`HttpUrlFetcher`的`cancel`方法设置标志,之后的数据获取会返回`null`,中断加载流程。Glide还使用定制的线程池,如AnimationExecutor、diskCacheExecutor、sourceExecutor和newUnlimitedSourceExecutor,其中某些禁止网络访问,并根据CPU核心数动态调整线程数。
77 2
|
8天前
|
调度 Android开发 开发者
【颠覆传统!】Kotlin协程魔法:解锁Android应用极速体验,带你领略多线程优化的无限魅力!
【8月更文挑战第12天】多线程对现代Android应用至关重要,能显著提升性能与体验。本文探讨Kotlin中的高效多线程实践。首先,理解主线程(UI线程)的角色,避免阻塞它。Kotlin协程作为轻量级线程,简化异步编程。示例展示了如何使用`kotlinx.coroutines`库创建协程,执行后台任务而不影响UI。此外,通过协程与Retrofit结合,实现了网络数据的异步加载,并安全地更新UI。协程不仅提高代码可读性,还能确保程序高效运行,不阻塞主线程,是构建高性能Android应用的关键。
28 4
|
13天前
|
缓存 算法 数据库
安卓应用性能优化:一场颠覆平凡的极限挑战,拯救卡顿的惊世之战!
【8月更文挑战第7天】《安卓应用性能优化实战》
27 4
|
3天前
|
编译器 Android开发 开发者
Android经典实战之Kotlin 2.0 迁移指南:全方位优化与新特性解析
本文首发于公众号“AntDream”。Kotlin 2.0 已经到来,带来了 K2 编译器、多平台项目支持、智能转换等重大改进。本文提供全面迁移指南,涵盖编译器升级、多平台配置、Jetpack Compose 整合、性能优化等多个方面,帮助开发者顺利过渡到 Kotlin 2.0,开启高效开发新时代。
8 0
|
2月前
|
ARouter IDE 开发工具
Android面试题之App的启动流程和启动速度优化
App启动流程概括: 当用户点击App图标,Launcher通过Binder IPC请求system_server启动Activity。system_server指示Zygote fork新进程,接着App进程向system_server申请启动Activity。经过Binder通信,Activity创建并回调生命周期方法。启动状态分为冷启动、温启动和热启动,其中冷启动耗时最长。优化技巧包括异步初始化、避免主线程I/O、类加载优化和简化布局。
51 3
Android面试题之App的启动流程和启动速度优化
|
1月前
|
算法 Java API
Android性能优化面试题经典之ANR的分析和优化
Android ANR发生于应用无法在限定时间内响应用户输入或完成操作。主要条件包括:输入超时(5秒)、广播超时(前台10秒/后台60秒)、服务超时及ContentProvider超时。常见原因有网络、数据库、文件操作、计算任务、UI渲染、锁等待、ContentProvider和BroadcastReceiver的不当使用。分析ANR可借助logcat和traces.txt。主线程执行生命周期回调、Service、BroadcastReceiver等,避免主线程耗时操作
37 3
|
2月前
|
缓存 JSON 网络协议
Android面试题:App性能优化之电量优化和网络优化
这篇文章讨论了Android应用的电量和网络优化。电量优化涉及Doze和Standby模式,其中应用可能需要通过用户白名单或电池广播来适应限制。Battery Historian和Android Studio的Energy Profile是电量分析工具。建议减少不必要的操作,延迟非关键任务,合并网络请求。网络优化包括HTTPDNS减少DNS解析延迟,Keep-Alive复用连接,HTTP/2实现多路复用,以及使用protobuf和gzip压缩数据。其他策略如使用WebP图像格式,按网络质量提供不同分辨率的图片,以及启用HTTP缓存也是有效手段。
56 9
|
2月前
|
XML 监控 安全
Android App性能优化之卡顿监控和卡顿优化
本文探讨了Android应用的卡顿优化,重点在于布局优化。建议包括将耗时操作移到后台、使用ViewPager2实现懒加载、减少布局嵌套并利用merge标签、使用ViewStub减少资源消耗,以及通过Layout Inspector和GPU过度绘制检测来优化。推荐使用AsyncLayoutInflater异步加载布局,但需注意线程安全和不支持特性。卡顿监控方面,提到了通过Looper、ChoreographerHelper、adb命令及第三方工具如systrace和BlockCanary。总结了Choreographer基于掉帧计算和BlockCanary基于Looper监控的原理。
46 3
|
1月前
|
安全 Java 数据处理
Android多线程编程实践与优化技巧
Android多线程编程实践与优化技巧
|
2月前
|
安全 Java 数据处理
Android多线程编程实践与优化技巧
Android多线程编程实践与优化技巧