APP性能优化系列-卡顿定位(一)

使用后会显示

ThisTime: 代表启动最后一个Activity的耗时

TotalTime: 代表启动所有的Activity的耗时

WaitTime: 代表AMS启动所有的Activity的耗时

注意点:该命令只能是获取配置了的Activity, 其他的无效,因为Android组件中有个 exported 属性,没有intent-filter时exported 属性默认为false,此组件只能由本应用用户访问,配备了intent-filter后此值改变为true,允许外部调用。

缺点: adb命令只能查看配置了的Activity,其他的无法查看,并且也无法精准的查看其方法具体耗费的时间,所以因为其局限性 并不能很好的解决我们问题,我们采用手动打点的方式查看。

4.手动打点


先看代码

public class MyApplication extends Application {

@Override

public void onCreate() {

super.onCreate();

initBugly();

initBaiduMap();

initJPushInterface();

initShareSDK();

}

private void initBugly() throws InterruptedException {

Thread.sleep(1000); // 模拟耗费的时间

}

private void initBaiduMap() throws InterruptedException {

Thread.sleep(2000); // 模拟耗费的时间

}

private void initJPushInterface() throws InterruptedException {

Thread.sleep(3000); // 模拟耗费的时间

}

private void initShareSDK() throws InterruptedException {

Thread.sleep(500); // 模拟耗费的时间

}

}

代码不用我说,项目中很常见,现在的问题是APP启动加载很慢, 那么如何精准的查询到具体耗时的方法?

long startTime = System.currentTimeMillis();

initBugly();

Log.d(“lybj”, “initBugly()方法耗时:”+ (System.currentTimeMillis() - startTime));

long startTime = System.currentTimeMillis();

initBaiduMap();

Log.d(“lybj”, “initBaiduMap()方法耗时:”

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值