java对执行顺序的混淆
我有一个由几个不同活动组成的游戏应用程序。第一个被调用的是一个启动屏幕,当这个完成时,这个完成并通过一个intent启动另一个活动。为了访问所有活动中一致的一些全局数据,我还有一个“globals”类,如下所示:
public class Globals extends Application
{
int global_variable_A;
int global_variable_B;
int global_variable_C;
public void onCreate()
{
// stuff
}
}
在安卓manifest中。xml我有以下几点(除其他外):
<application
安卓:icon="@drawable/mygame_icon"
安卓:screenOrientation="portrait"
安卓:label='"My Game"' 安卓:name=".Globals">
<activity
安卓:label="My Game"
安卓:name=".Splash"
安卓:screenOrientation="portrait">
<intent-filter >
<action 安卓:name="安卓.intent.action.MAIN" />
<category 安卓:name="安卓.intent.category.LAUNCHER" />
</intent-filter>
</activity>
我现在的问题是,首先执行的是Globals的onCreate还是Splash的onCreate?或者它们在不同的线程上同时运行?我这样问是因为我得到了一些不一致的行为,如果它们在不同的线程上,就会得到解释
# 1 楼答案
onCreate()
全球偏离航线。。首先执行应用程序,然后执行活动,,。。通过在Application onCreate()方法中保留一个调试点,您可以自己进行测试