万事开头难,在app第一次被打开的时候会加载很多东西,一系列图层渲染、逻辑序列化都在内部默默的执行,所以这个时候是最考验app的时刻,如果加载速度慢,让用户体验不佳,就会失去大量的用户。
我们会在开头就做好优化工作,正如上面所说的app在启动的时候就需要正确的优化,以确保它能够快速的被打开。那么我们来说下app的运行机制。像app它会依次加载activity、service、broadcast,这些都是通过intent来启动的。Intent可以启动你的app中的组件,也可以启动其他app中的组件。Intent可以是显式的,也可以是隐式的,在这个过程中,有一些东西只能被放在主线程中,有一些东西可以放在子线程中进行执行,这就大大利用了手机CPU多核的能力,目前cpu的核心数是比较多的,这几年来10核20线程的手机数不胜数。
如果app足够庞大,那么页面数量就会很多,实际上有一些页面可以做到一些预加载工作,而有一些页面又不需要,所以呢我们会使用一些优化策略来实现一种叫懒加载的技术,有的时候并不需要所有页面都加载到内存之中,这样很快就会耗干内存,也会使得在第一次的加载速度很慢,用户体验就不好,但是有时我们用预加载,提前加载一个页面的框架,这样空间换时间的方式也是策略之一,提前加载这个页面,能够让用户频繁访问这个页面的时候最大化速度。
另外app的开发离不开底层数据库的设计,尽量保证数据最小粒度传输,摒弃掉不需要的信息,保证传输次数不泛滥,也是优化的手法之一。