性能优化 essentials
- 减少启动时间:使用 Android Studio Profiler 分析应用冷启动耗时,优化资源加载与代码初始化
- 内存泄漏排查:通过
LeakCanary
工具检测 Activity/Fragment 泄漏,定期调用System.gc()
触发垃圾回收 - 图片加载优化:采用
Glide
或Picasso
实现图片懒加载,使用DiskLruCache
管理本地缓存 - 数据库查询提速:使用
Room
的预编译语句,开启事务批量操作,避免频繁的LiveData
更新
内存管理最佳实践
- 对象复用:使用对象池技术(如
ObjectPool
库)管理频繁创建/销毁的 Bitmap 对象 - 资源释放:在
onDestroy()
生命周期中手动释放 MediaPlayer、Camera 等硬件资源 - 内存监控:集成 Memory Monitor 工具实时追踪堆内存变化
- 避免过度绘制:使用
Draw9Patch
优化 UI 图层,开启WindowManager.LayoutParams.FLAG_OPENGL_RENDERER
启用 GPU 加速
UI 优化技巧
- 自定义 View:使用
Canvas
实现路径绘制,通过Paint
优化图形渲染 - 动画优化:采用
ObjectAnimator
替代ValueAnimator
,使用ViewPropertyAnimator
链式调用 - 布局嵌套:通过
ConstraintLayout
替代多层 FrameLayout,减少布局层级至 3 层以内 - 资源压缩:使用
Android Asset Packaging Tool
压缩 PNG 图片,开启Renderscript
加速图像处理