测试app启动时间

来源:6-5 如何实现类似微信右滑返回的效果?

用户1148542

2019-07-10

    private ExecutorService executorService;//在真实的项目中不要使用这个类
    //参考AsyncTask源码
    private static final int CPU_COUNT = Runtime.getRuntime().availableProcessors();
    private static final int CORE_POOL_SIZE = Math.max(2, Math.min(CPU_COUNT - 1, 4));
    private long startTime;

    @Override
    public void onCreate() {
        super.onCreate();
//        Debug.startMethodTracing("zhou");
        startTime = System.currentTimeMillis();
        executorService = Executors.newFixedThreadPool(CORE_POOL_SIZE);
        executorService.submit(new Runnable() {
            @Override
            public void run() {
                a();
            }
        });
        executorService.submit(new Runnable() {
            @Override
            public void run() {
                b();
            }
        });
        executorService.submit(new Runnable() {
            @Override
            public void run() {
                c();
            }
        });
        executorService.submit(new Runnable() {
            @Override
            public void run() {
                d();
            }
        });
        Log.e("MyApp","启动时间-->"+(System.currentTimeMillis()-startTime));
//        Debug.stopMethodTracing();
    }
    public void a(){
        Log.e("MyApp","a方法执行了-->");
        try {
            Thread.sleep(500);
        } catch (InterruptedException e) {
            e.printStackTrace();
        }
    }
    public void b(){
        Log.e("MyApp","b方法执行了-->");
        try {
            Thread.sleep(1000);
        } catch (InterruptedException e) {
            e.printStackTrace();
        }
    }
    public void c(){
        Log.e("MyApp","c方法执行了-->");
        try {
            Thread.sleep(1500);
        } catch (InterruptedException e) {
            e.printStackTrace();
        }
    }
    public void d(){
        Log.e("MyApp","d方法执行了-->");
        try {
            Thread.sleep(2000);
        } catch (InterruptedException e) {
            e.printStackTrace();
        }
    }
}

老师这是我优化app启动的速度,这个测试app启动的时间总感觉不对。

写回答

1回答

bennyhuo

2019-07-11

是啊,你这跟app启动时间没有关系啊,打印出来的也是executor.submit了几个runnable的时间,而且这几个runnable跟app启动时间也没什么关系呀

0
0

大厂资深面试官 带你破解Android高级面试

改变视野和思维 深度与广度兼备的 Android 进阶面试指导课程

1636 学习 · 222 问题

查看课程