我在android:process
中没有使用AndroidManifest
。当我在oncreate
课程中启动应用Application
时,会被调用两次。我想知道可能导致这种行为的原因。
答案 0 :(得分:-1)
您运行应用时可能会调用您的服务。 使用此选项可防止多次调用服务:
Intent intent = new Intent(YourActivity.this, YourService.class);
if (!IsServiceRunning(YourService.class)) {
startService(intent);
}
使用此功能检查服务是否正在运行:
public boolean IsServiceRunning(Class<?> serviceClass) {
ActivityManager manager = (ActivityManager) getSystemService(getApplicationContext().ACTIVITY_SERVICE);
for (ActivityManager.RunningServiceInfo service : manager.getRunningServices(Integer.MAX_VALUE)) {
if (serviceClass.getName().equals(service.service.getClassName())) {
return true;
}
}
return false;
}