Android稳定性相关知识

关于作者:CSDN内容合伙人、技术专家, 从零开始做日活千万级APP。

专注于分享各领域原创系列文章 ,擅长java后端、移动开发、商业变现、人工智能等,希望大家多多支持。

目录

  • 一、导读
  • 二、概览
  • 三、相关方法论
    • [3.1 crash](#3.1 crash)
    • [3.2 性能](#3.2 性能)
    • [3.3 高可用](#3.3 高可用)
    • [3.4 容灾方案](#3.4 容灾方案)
    • [3.5 长期性能优化](#3.5 长期性能优化)
  • [四、 推荐阅读](#四、 推荐阅读)

一、导读

我们继续总结学习,温故知新。

本文讲述稳定性的相关概念。

二、概览

对所有app而言,必须尽可能的保障app正常运行,不产生crash,这是最高优先级,不稳定的产品,用户留存率也低。

在不崩溃的情况下,也要保证在极端场景下也可以操作app,

然后就要开始考虑性能上的优化了,如内存、流量、卡顿、耗电等等。

我们稳定性以预防为主,监控为辅,力争将问题扼杀在萌芽中。

三、相关方法论

3.1 crash

  1. 首先要正确认识并高度重视crash问题
  2. 建立相关的crash指标,比如 崩溃率:0.12%
  3. 接入crash及异常数据分析平台,有自己的APM最佳,收集尽可能详细的信息

crash指标的维度比较多,我们以bugly为例:有设备崩溃率,次数崩溃率,java崩溃,Native崩溃

当然还可以进一步细分,如启动crash(启动一段时间就崩溃),这个需要自建apm支持。

同时我们要关注每个版本新增的crash,持续跟进解决老版本的crash。

3.2 性能

  1. 重视性能优化,建立相关性能指标
  2. 性能优化的维度很多,包括但不限于启动优化,电量、内存、卡顿、网络等

具体知识可查看前面的文章。

3.3 高可用

业务的主流程绝不能被阻塞,要建立多维度的监控系统

  1. 建立用户行为日志系统,记录下全面的信息,包括用户行为,crash发生前,发生时的详细信息,以及用户使用到的各种资源等信息
  2. 用户反馈系统
  3. 性能监控系统(如内存、大图等)
  4. 业务异常监控系统

3.4 容灾方案

  1. 建立配置中心,功能开关,对于每一个要上线的功能,最好加个开关来控制这个功能是否要开启
  2. 统跳中心,处理异常的页面,避免用户使用功能
  3. 动态(热)修复
  4. 安全模式,建立报警策略(预制报警、特定指标报警等),可监控性能异常 or 业务异常

3.5 长期性能优化

  1. 制定编码规范,加强技术评审,加强codereview
  2. 制定好每个阶段的流程规范,比如开发阶段、测试阶段、灰度阶段、及上线后
  3. 明确责任人,明确权利与义务
java 复制代码
稳定性是一个长期艰巨的过程,需要持之以恒。

四、 推荐阅读

Java 专栏

SQL 专栏

数据结构与算法

Android学习专栏

相关推荐
巫山老妖1 小时前
Android 应用架构演进:MVC / MVP / MVVM / MVI (2026)
android·android jetpack
木头左5 小时前
【架构设计】教育类 App 服务端化改造:AI 上移、题库分层与个人题库归属
android·架构设计·系统设计·后端开发·数据库设计
墨狂之逸才6 小时前
USB 的 HOST 和 DEVICE 到底有什么区别?ADB 调试应该选哪个?
android
奶油话梅糖7 小时前
苹果的内核跑上了安卓手机:2,631 Star 的 HakiOS 让 XNU 在 Adreno GPU 上画出 118 帧
android·macos·智能手机
恋猫de小郭7 小时前
Flutter THLC 的 WebView 滚动终于从 70 FPS 提升到 120 FPS
android·前端·flutter
好的佩奇18 小时前
Dart 之扩展类型
android·flutter·dart
alexhilton20 小时前
2027 Android 开发者路线图:学习、面试与 AI
android·kotlin·android jetpack
灿飞屋1 天前
Kotlin与Java虚拟机三:控制流
android·java·开发语言·后端·python·kotlin·安卓
疯华整猫1 天前
我用 Trae 把 Android 内存账重算了一遍
android·性能优化·源码
TimeFine1 天前
AI 编程工作流的设计:从人工判断到 AI裁判
android·ai编程