前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >从新手到架构师,一篇就够!《Android性能优化—实战解析》

从新手到架构师,一篇就够!《Android性能优化—实战解析》

原创
作者头像
用户9227784
发布2021-12-21 09:40:01
1.3K0
发布2021-12-21 09:40:01
举报
文章被收录于专栏:Android程序Shape使用总结!

前言

安卓开发大军浩浩荡荡,经过近十年的发展,Android技术优化日异月新,如今Android 9.0 已经发布,Android系统性能也已经非常流畅,可以在体验上完全媲美iOS。 但是,到了各大厂商手里,改源码、自定义系统,使得Android原生系统变得鱼龙混杂,然后到了不同层次的开发工程师手里,因为技术水平的参差不齐,即使很多手机在跑分软件性能非常高,打开应用依然存在卡顿现象。另外,随着产品内容迭代,功能越来越复杂,UI页面也越来越丰富,也成为流畅运行的一种阻碍。

  • 在 Android开发中,性能优化策略十分重要
  • 本文主要讲解Android性能优化—实战解析希望你们会喜欢

这一份《Android性能优化—实战解析》,是整理了业内有赞技术团队、腾讯技术团队、阿里巴巴技术团队、美团技术团队、爱奇艺技术团队、得到技术团队、携程技术团队、蘑菇街技术团队等性能监控实战中遇到的问题以及解决方案。从各个方面对目标产品进行全方位的“优化”,让产品的性能得到提升。

对于大部分程序员来说,哪怕工作很久经验丰富,但依然会出现面对棘手问题束手无策的状况,大多是因为对出现问题的情况和处理思路模糊不清,导致此原因就是因为对性能优化方面的实战经验不足

即便是最有经验的程序员,也很难在开发时就能避免所有导致性能低下的“坑”,因此解决性能问题的关键是在于能不能尽早地发现和定位这些“坑”。

只有通过在实践中总结常见性能问题,才能在你遇到性能问题的时候快速定位问题、解决问题,那你在工作中、团队里、面试时,也就拥有了同行难以复制的核心竞争力。

目录

  • 对字符串匹配算法的一点理解
  • 安卓APP崩溃捕获方案———xCrash
  • 深入理解Gradle框架之一:Plugin,Extension, buildSrc
  • Android H5首屏优化实践
  • 任意URL跳转漏洞修复与JDK中getHost()方法之间的坑
  • 支付宝客户端架构解析:Android_客户端启动速度优化之「垃圾回收l
  • 支付宝App构建优化解析:通过安装包重排布优化Android 端启动性能
  • 支付宝App构建优化解析:Android包大小极致压缩
  • 深入理解Flutter多线程
  • 携程技术—从智行Android项目看组件化架构实践
  • Flutter您需要知道的知识点
  • 二维码扫描优化

原本Lark直接集成了zxing实现扫一扫功能。由于Lark的特殊业务需求,因此并不需要支持到这么多格式,只需要支持QR Code,因此我们对zxing内部进行定制,使得zxing只支持QR Code。这样既可以减少zxing库的大小,也可以加快zxing处理一帧数据的速度。

优化主要包含两方面:

**扫描性能 交互体验**

图片
图片
  • AOP技术在客户端的应用与实践
  • 互联网产品决策秘笈:AB测试
  • Android Native 内存泄漏系统化解决方案
  • Android P之Smart Linkify
  • 百度App组件化之路
  • 百度App网络深度优化系列《三》弱网优化
  • 深入理解gradle框架之二:依赖实现分析
  • Probe: Android线上OOM问题定位组件
  • Android静态代码扫描效率优化与实践
  • Scene: Android开源页面导航和组合框架
  • 网易新闻客户端H5秒开优化
  • 解决支付宝包体积优化的遗留问题:运行时获取dexpc

精简安卓应用的包体积是提升其质量的重要手段之一。安卓应用的安装包(apk文件)中dex保存的是应用的代码,占有可观的体积。如果能够将这一部分的体积减小,那么无疑会有效地减小安装包的体积。

图片
图片
  • Android篇│爱奇艺App启动优化实践分享
  • 二维码扫描优化及爱奇艺App的实践
  • 动态下发so库在Android APK安装包瘦身方面的应用
  • 史上最全Android渲染机制讲解(长文源码深度剖析)
  • 花椒Android端自动化测试实践
  • 一种简单优雅的TextView行间距适配方案
  • Android 10分区存储介绍及百度APP适配实践
  • 抖音BoostMultiDex优化实践: Android低版本上APP首次启动时间减少80%
  • 抖音BoostMultiDex优化实践:Android低版本上APP首次启动时间减少80%(二)
  • 携程Android 10适配踩坑指南
  • 抖音包大小优化-资源优化

随着业务的快速迭代,抖音 Android 端的包大小爆发式增长。包大小直接影响到下载转化率、推广成本、运行内存和安装时间等因素,因此对 apk 进行瘦身是一件很有必要且收益很大的事情。

apk 主要由 dex、resource、asserts、native libraries 和 meta-data 组成,针对每一部分,都可以专项去做包大小优化。抖音 Android 端经过一段时间努力,包大小优化已经取得了阶段性的成果。目前仍在持续的优化中。

图片
图片
  • Gradle 与 Android构建入门
  • AwCookieManager.nativeGetCookie crash排查
  • 开源|BoostMultiDex:挽救Android Dalvik 机型APP升级安装体验
  • 字节跳动技术团队—另类BadTokenException问题分析和解决
  • LayoutInflater原理分析与复杂布局优化实践
  • 今日头条Android '秒级编译速度优化
  • 曾梦想if-else走天涯?看看"麦任树模式"优化
  • 谷歌—协程中的取消和异常│异常处理详解
  • QQ音乐—彻底弄懂浏览器缓存策略
  • 闲鱼如何在2个月内实现Android启动速度翻倍的?

随着闲鱼App端更多新功能、新技术的加入,应用冷启动速度越来越慢,这也意味着用户看到有效内容的时间被拉长,对用户体验有着很大的伤害。目前,在内部测试版本中,我们已经将安卓在低端机上的冷启动时间从原来的10s降低到了5s内。

图片
图片
  • Android Camera内存问题剖析
  • 有赞移动Crash平台建设
  • 贝壳APP Top Experience系列|Android方法耗时统计工具
  • 抖音Android性能优化系列:Java内存优化篇
  • QQ音乐Android编译提速之路
  • 移动端UI—致性解决方案
  • Android D8编译器" bug"导致Crash的问题排查
  • 今日头条ANR优化实践系列–设计原理及影响因素
  • 今日头条ANR优化实践系列–监控工具与分析思路
  • 全民k歌适配arm64-v8a方案
  • 全民K歌内存篇1——线上监控与综合治理
  • 全民K歌内存篇2——虚拟内存浅析
  • 全民K歌内存篇3———native内存分析与监控
  • 一种按照library的维度进行Android包大小分析的方法和实践
  • 网易新闻构建优化:如何让你的构建速度"势如闪电"?
  • 美团—设计稿(UI视图)自动生成代码方案的探索
图片
图片

由于文章篇幅有限,文档资料内容较多,本可以提供链接下载,但无奈容易被和谐,所以全部存档,需要这些文档这里的朋友,可以点击我的【Gitee】,希望能够共同进步,共勉!

总结

作为一个程序员,性能优化是常有的事情,不管是桌面应用还是web应用,不管是前端还是后端,不管是单点应用还是分布式系统,所以我们应该更加去注重性能优化的一个使用和技术上提升,综上所述,对APP进行性能优化已成为开发者该有的一种综合素质,也是开发者能够完成高质量应用程序作品的保证。

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 目录
  • 优化主要包含两方面:
  • 总结
相关产品与服务
脆弱性检测服务
脆弱性检测服务(Vulnerability detection Service,VDS)在理解客户实际需求的情况下,制定符合企业规模的漏洞扫描方案。通过漏洞扫描器对客户指定的计算机系统、网络组件、应用程序进行全面的漏洞检测服务,由腾讯云安全专家对扫描结果进行解读,为您提供专业的漏洞修复建议和指导服务,有效地降低企业资产安全风险。
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档