Android 系统仍在不断进化。
随着人们对数码产品更大显示占比需求的高涨,手机全面屏时代已经不可阻挡地到来,面对各式各样的异形屏,应用开发者们似乎多了不少 “额外任务”。
在种类繁多的异形全面屏时代,开发者们是如何快速适配的呢?
招商银行 Android 版应用的开发团队做出了一个不错的示范。
招商银行是中国境内第一家完全由企业法人持股的股份制商业银行,也是中国内地市值第五大的银行。作为招行移动端的主力产品之一,招商银行 app 是一款与用户息息相关的金融 app,而又因为与财产安全息息相关,这款应用的体验会给客户在移动端甚至整个银行业务上的留存带来直接影响。
位于深圳的招行总部大楼 年初招行的一份用研报告显示,招行的用户群体偏年轻化,更喜欢尝鲜,
他们更换最新手机的意愿也较为强烈。招行向来比较重视用户体验,所以察觉到刘海屏手机开始兴起后,便着手将招行 app 的 Android 版进行 Android 9 适配,以保证使用刘海屏手机的用户能获得最佳的应用体验。
招行 app 运行在刘海屏的 Android 系统手机上 在适配过程中,开发组的阿辉发现,针对于 Android 9 的适配开发,前期需要做的研究和梳理工作较多,使用了Android 9 官方的 API 后,招行 app 已经可以对形状各异的刘海屏进行自适应,从而达到理想的显示效果。
阿辉带领适配 Android 9 的小组有三名成员,大家一起用了两个月左右的时间完成了应用对新版本的适配。虽然作为先行者较为辛苦,但阿辉表示这对招行 app 的推广有重要意义,可以让使用 9.0 系统的高端用户群尽早无障碍地使用招行 app,和最前沿的用户一同进入了显示的新时代。
2018 年 4 月,深圳曾有一场关于 Android 开发的技术分享活动,正是在这场活动上,招行的 app 开发团队获知了 Android 9 将对当时方兴未艾的 Android 刘海屏手机进行优化调整,所以也能未雨绸缪地在新版系统正式发布前,提前储备知识。
招行的 Android 技术团队讨论工作 为了适配 Android 9,招行的 Android 开发团队使用了第三方测试服务进行兼容性测试,还特意使用了原生 Android 系统的 Pixel 手机进行真机测试,其结果稳定。
为了获得 Android 新版本提供的安全性提升和性能优化,招行的团队将应用的 targetSdkVersion 升级至 26,对刘海屏进行了适配,并且对非 SDK 接口的调用进行了排查清理,还优化了通知栏。
实际适配过程中,阿辉的小组成员们首先阅读的 Android 官网提供的相关适配资料,并借鉴了网上技术博客的相关做法,对招行 app 所涉及的最小化适配集合进行了梳理。除此之外,他们还使用了 Android 的『非 SDK 接口调用分析工具』"veridex" 对自家的 app 进行了扫描,并进行相应的适配。
招行的 Android 开发团队从 2016 年年末开始使用 Android Studio,经过了近两年的实战开发,阿辉表示 Android Studio 的开发体验比之前使用的 Eclipse ADT 好很多。招行的 Android 团队认为 Android Studio 的开发界面很友好,版本管理、调试、性能分析等工具完备,在对 app 进行瘦身优化、性能优化以及代码质量检查等方面帮助很大。
Android Studio 已经在招行的 Android 技术团队内普及 在应用瘦身方面,招行团队使用了 Android Studio 自带的 APK Analyzer,清晰地分析出 APK 的结构以及各部分的大小,然后有针对性的进行瘦身优化,如减少代码体积、压缩资源、减少第三方库引用等。除此之外,由于版本迭代,可能存在不少冗余的资源文件,借助于 Android Lint 工具,招行团队轻松地扫描出了这些未使用的资源,显著提升了瘦身效果。
在使用 Android Studio 之前,招行的团队使用的是公司内部的代码静态扫描工具对 Android 代码进行扫描,但由于该工具只针对于 Java 语言,对于很多 Android 平台性的代码特性无法完整覆盖,所以已经无法满足工作需求。在开始使用 Android Studio 以后,其中的 Android Lint 工具帮助招行团队在开发以及代码检视的时候及早发现代码规范问题,和可能存在的代码缺陷,并将收集到的信息不断补充进代码规范文档里,供全员学习,共同提升代码质量。
分享与学习 在对应用进行性能分析时,如 oom 或卡顿等问题,招行的团队经常会使用 Android Studio 自带的 Android Profiler 工具进行相关分析,这样可以快速定位内存泄露、影响 UI 流畅的不合理逻辑等问题。
用着 Android 官方的开发环境,适配着最新的 Android 系统,招行的 Android 开发团队还想做更多功能。
虽然阿辉的小组顺利完成了对 Android 9 的前期适配,但实际接触下来阿辉觉得 Android 9 的一些新特性可以为银行的业务带来更多提升。
比如 Android 9 在有支持的设备上带来了精度更高的室内定位——银行的 app 在线下网点授权激活时,如果定位可以更精准,也会为用户体验带来显著提升。阿辉就此和招行的产品经理进行了探讨,并计划和其他开发小组的同事共同推进落实在招行 app 内的全新室内定位功能。
银行的 app 每天要处理的交易资金如同天文数字一般,是真正的“牵一发而动全身”型应用,但也正是为了回报把财产托付给自己的客户,招行肯投入精力去研究并应用最新技术。
App 间流动的资金数额很大,幕后工程师们钻研新技术耗费的心血同样很多——紧跟时代的努力,将赢得来自走得最快那批用户的信任与尊敬,加深企业与忠实用户的联系。 在对应用进行性能分析时,如 oom 或卡顿等问题,招行的团队经常会使用 Android Studio 自带的 Android Profiler 工具进行相关分析,这样可以快速定位内存泄露、影响 UI 流畅的不合理逻辑等问题。
用着 Android 官方的开发环境,适配着最新的 Android 系统,招行的 Android 开发团队还想做更多功能。
虽然阿辉的小组顺利完成了对 Android 9 的前期适配,但实际接触下来阿辉觉得 Android 9 的一些新特性可以为银行的业务带来更多提升。
比如 Android 9 在有支持的设备上带来了精度更高的室内定位——银行的 app 在线下网点授权激活时,如果定位可以更精准,也会为用户体验带来显著提升。阿辉就此和招行的产品经理进行了探讨,并计划和其他开发小组的同事共同推进落实在招行 app 内的全新室内定位功能。
银行的 app 每天要处理的交易资金如同天文数字一般,是真正的“牵一发而动全身”型应用,但也正是为了回报把财产托付给自己的客户,招行肯投入精力去研究并应用最新技术。
App 间流动的资金数额很大,幕后工程师们钻研新技术耗费的心血同样很多——紧跟时代的努力,将赢得来自走得最快那批用户的信任与尊敬,加深企业与忠实用户的联系。 在对应用进行性能分析时,如 oom 或卡顿等问题,招行的团队经常会使用 Android Studio 自带的 Android Profiler 工具进行相关分析,这样可以快速定位内存泄露、影响 UI 流畅的不合理逻辑等问题。
用着 Android 官方的开发环境,适配着最新的 Android 系统,招行的 Android 开发团队还想做更多功能。
虽然阿辉的小组顺利完成了对 Android 9 的前期适配,但实际接触下来阿辉觉得 Android 9 的一些新特性可以为银行的业务带来更多提升。
比如 Android 9 在有支持的设备上带来了精度更高的室内定位——银行的 app 在线下网点授权激活时,如果定位可以更精准,也会为用户体验带来显著提升。阿辉就此和招行的产品经理进行了探讨,并计划和其他开发小组的同事共同推进落实在招行 app 内的全新室内定位功能。
银行的 app 每天要处理的交易资金如同天文数字一般,是真正的“牵一发而动全身”型应用,但也正是为了回报把财产托付给自己的客户,招行肯投入精力去研究并应用最新技术。
App 间流动的资金数额很大,幕后工程师们钻研新技术耗费的心血同样很多——紧跟时代的努力,将赢得来自走得最快那批用户的信任与尊敬,加深企业与忠实用户的联系。