黑白屏问题
给启动activity单独设置一个Theme
<style name="SplashTheme" parent="Theme.AppCompat.Light.NoActionBar">
<item name="colorPrimary">@color/white</item>
<item name="colorPrimaryDark">@color/white</item>
<item name="colorAccent">@color/colorAccent</item>
//设置一样图片
<item name="android:windowBackground">@drawable/iv_guide_page_one</item>
</style>
查看activity执行时间
4.4以前
db shell am start -W com.lqr.wechat/com.lqr.wechat.activity.SplashActivity
- ThisTime:最后一个启动的Activity的启动耗时;
- TotalTime:自己的所有Activity的启动耗时;
- WaitTime: ActivityManagerService启动App的Activity时的总时间(包括当前Activity的onPause()和自己Activity的启动)。
4.4版本以后Logcat 输入Display筛选系统日志 不过滤信息No Filters
三方sdk异步操作
但是要注意:
- 1: 不能在异步任务中UI操作
- 2: 里面的API不能创建handler
- 3: 对异步要求不高的代码
特别需要注意:如果进入了首页,异步初始化还没有完成,然后首页中需要调用sdk里面的方法,这时候容易报空指针错误。
Trace工具分析
用这个方法,获取方法执行的时间
File file=new File(Environment.getExternalStorageDirectory(),"app1.trace");
Debug.startMethodTracing(file.getAbsolutePath());
中间为需要统计执行时间的代码
Debug.stopMethodTracing();
然后 adb pull /storage/emulated/0/app1.trace把文件拉出来分析 把pull到电脑上的文件拖到AS中就可以分析了
f1()的横条表示方法执行的总时长。