每次app打开时,Application的子类中的onCreate方法都不会调用

时间:2014-07-18 10:16:51

标签: java android android-intent oncreate

我在Application类的子类中的onCreate()方法中启动intent服务。但是第一次打开应用程序时会调用它。每次打开应用程序时都不应该调用它。当我杀死后台进程时它甚至不起作用。我的观察是它在星系音符中工作但不是在三星的二重奏中,请帮助我。

public class MyApp extends Application {
@Override
public void onCreate() {
Toast.makeText(this.getApplicationContext(), "APPLICATION", Toast.LENGTH_LONG).show();
context=this.getApplicationContext();
if (!ContactUtiles.isFileExit()) {

    createDatabase(Opration.NOT_FOR_DELTA);
    if (DBConstants.LOGD) {Log.d(TAG, DBConstants.DB_NOT_EXIST);}


}
super.onCreate();
}
}

1 个答案:

答案 0 :(得分:1)

您应该阅读有关Android Acitvity Lifecycle的信息:http://developer.android.com/training/basics/activity-lifecycle/index.html

简而言之:当必须创建Activity时,将调用onCreate()。

如果您启动应用,则必须创建活动。如果你去后台,活动很可能不会在特定时间过后被破坏,所以当你返回应用程序时,不需要创建活动(它没有被销毁)。

如果您希望每次都执行代码,则应使用onResume()。每次在显示Activity之前调用onResume()。