我在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();
}
}
答案 0 :(得分:1)
您应该阅读有关Android Acitvity Lifecycle的信息:http://developer.android.com/training/basics/activity-lifecycle/index.html
简而言之:当必须创建Activity时,将调用onCreate()。
如果您启动应用,则必须创建活动。如果你去后台,活动很可能不会在特定时间过后被破坏,所以当你返回应用程序时,不需要创建活动(它没有被销毁)。
如果您希望每次都执行代码,则应使用onResume()。每次在显示Activity之前调用onResume()。