Android启动时长优化

  • 内容
  • 评论
  • 相关

主要是针对Application的优化。将一些库的初始化放到子线程,或者在主线程延时执行。上代码

// 子线程初始化
object : Thread() {
            override fun run() {
                Process.setThreadPriority(Process.THREAD_PRIORITY_BACKGROUND)
                Thread.sleep(2000)//建议延迟初始化,可以发现是否影响其它功能,或者是崩溃!
                // 可以放如Bugly tencent的X5等可以在子线程初始化的
            }
        }.start()

// 主线程初始化
 val handler = Handler()
 handler.postDelayed({
         // 执行操作
        }, 2000)

用adb shell am start -S -W 包名/包名+入口Activity验证下。

未优化前

Activity: ***/.MainActivity
ThisTime: 2631
TotalTime: 2631
WaitTime: 2733
Complete

优化后

Activity: ***/.MainActivity
ThisTime: 707
TotalTime: 707
WaitTime: 728

当然还有优化的空间。后面找到方法再更新啦。

评论

0条评论

发表评论

电子邮件地址不会被公开。 必填项已用*标注