就单独论onCreate和onStart的时候,里面不存在其他冗余代码。
是onCreate的开销大,因为他包含了setContentView()这个方法,xml文件只是个引导,
实质上图还是由java画出来的,凡是new 一个Activity,即new Intent过去的,Activity会按顺序调用
onCreate.onStart.onResume。而onStart和onResume的开销只是在代码上面,其实画图布局开销很大,当然你要说布局就几个组件,而onStart里面有个几万行代码那就另当别论了...
在代码量相当的情况下是onCreate的开销大,而经常调用的onStart会从缓存里调用。这个和内存机制有关了,用的少的放内存或者其他存储器,用的多的从缓存调用,这样速度和效率都很高

解决方案 »

  1.   

    onCreate只有一次,onStart会有多次
    Create->Start->Resume:启动
    Pause->Stop->Destroy->Create->Start->Resume:(横竖屏切换)
    Pause->Stop->Destroy:退出一般onStart中都是做资源的启动或恢复。
      

  2.   

    dinjay把整个周期都说的比较清楚了 。
       开销问题主要还是看实际应用中你怎么做的吧
      

  3.   

    onStart和onCreate里面都是什么东西,onCreate默认需要setContentView什么的,默认是比较大,但是你onStart里面放点network i/o啥的处理也是不好计算的,你看下jvm的内存和cpu执行过程好了,给你个方法参考 http://www.android123.com.cn/androidkaifa/621.html
      

  4.   

    一情况下当然是onCreate()的大了