我对每种情况都有自己的看法,我试图找到一种更好的(优化的)模式来使用。本质上,我有三个活动-- LaunchActivity、WelcomeActivity和MainActivity。LaunchActivity是DEFAULT的LAUNCHER活动,在我的例子中,LaunchActivity没有显示任何UI,也就是说,我在onCreate()中根本不调用setContentView()。基本上,我要做的就是在onStart()中检查某些条件,并根据结果启动WelcomeActivity或MainActivity。
现在,我在想,我真的应该使用Activity LaunchActivity的超类来做一些检查吗?有没有一个轻量级的选项可以用来加快启动过程,因为实例化一个Activity可能相当耗时和昂贵?
谢谢大家。
发布于 2014-11-05 14:07:22
我使用Activity在我的应用程序中充当闪屏,同时处理这种scenarios.The这样做的好处是它给了我的应用程序一个很好的界面,以及一个图形丰富的推广,而且在那个splash活动中,我正在根据我的安卓应用程序的最后一次保存状态来决定下一步应该启动什么活动。

另一种选择(我不会在我开发的任何应用程序中实现)是每次都启动欢迎活动,并在其onCreate()中检查一些满足条件的condition.If,然后使用intents...else打开MainActivity,继续进行欢迎活动的流程
public class WelcomeActivity extends Activity{
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
if(your condition)//check some condtion here
{
// if met,go to MainActivity
}
else
{
//carry on with the flow of WelcomeActivity
}
}
}总的来说,我认为使用第一种方法是更好的方法,因为它只增加了一个活动的开销,但使应用程序流更干净
https://stackoverflow.com/questions/26750637
复制相似问题