IT数码 购物 网址 头条 软件 日历 阅读 图书馆
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
图片批量下载器
↓批量下载图片,美女图库↓
图片自动播放器
↓图片自动播放器↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁
 
   -> 移动开发 -> 应用启动& 应用启动优化 -> 正文阅读

[移动开发]应用启动& 应用启动优化

一、了解冷热启动

冷启动:当启动应用时,后台没有该应用的进程(常见如:进程被杀、首次启动等),这时系统会重新创建一个新的进程分配给该应用。

热启动:App进程存在,并且Activity对象仍然存在内存中没有被回收。可以重复避免对象初始化,布局解析绘制。

场景就类似你打开微信聊了一会天这时候出去看了下日历在打开微信微信这时候启动就属于热启动。

二、掌握应用启动流程

在冷启动开始时,系统有三个任务。这三个任务是:

1.创建应用进程。

2.加载并启动应用。

3.在启动后立即显示应用的空白启动窗口然后显示Activity。

应用进程就负责后续阶段:

  1. 创建应用对象。
  2. 启动主线程。
  3. 创建MainActivity。
  4. 加载布局。
  5. 布置屏幕。
  6. 首帧绘制。

三、掌握如何查看应用启动耗时

1、查看Logcat

在Android Studio Logcat中过滤关键字“Displayed”,可以看到对应的冷启动耗时日志。

2、adb shell

使用adb shell获取应用的启动时间

// 其中的AppstartActivity全路径可以省略前面的packageName

adb shell am start -W [packageName]/[AppstartActivity全路径]

执行后会得到三个时间:ThisTime、TotalTime和WaitTime,详情如下:

ThisTime

表示最后一个Activity启动耗时。

TotalTime

表示所有Activity启动耗时。

WaitTime

表示AMS启动Activity的总耗时。

一般来说,只需查看得到的TotalTime,即应用的启动时间,其包括?创建进程 + Application初始化 + Activity初始化到界面显示?的过程。

四、掌握应用启动优化分析思路

启动过程中的常见问题

  • 1、点击图标很久都不响应:预览窗口被禁用或设置为透明。
  • 2、首页显示太慢:初始化任务太多。
  • 3、首页显示后无法进行操作:太多延迟初始化任务占用主线程CPU时间片。

1.冷启动优化之阶段把控

整个冷启动流程中至少有两处onCreate,分别是Application和Activity,onCreate中尽量避免做过多的初始化动作,如果必须,那么考虑IntentService

2.冷启动优化之曲线救国(慎用)

将确实是退出的逻辑替换为按Home键,将冷启动做成热启动的假象。

  移动开发 最新文章
Vue3装载axios和element-ui
android adb cmd
【xcode】Xcode常用快捷键与技巧
Android开发中的线程池使用
Java 和 Android 的 Base64
Android 测试文字编码格式
微信小程序支付
安卓权限记录
知乎之自动养号
【Android Jetpack】DataStore
上一篇文章      下一篇文章      查看所有文章
加:2022-09-21 00:40:22  更:2022-09-21 00:42:56 
 
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁

360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年11日历 -2024/11/25 5:38:21-

图片自动播放器
↓图片自动播放器↓
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
图片批量下载器
↓批量下载图片,美女图库↓
  网站联系: qq:121756557 email:121756557@qq.com  IT数码