2016-05-12 5 views
0

サービスを完全に停止し、プログラムでもう一度それを実行したいと思います。 OnDestroy()メソッドまたはstopSelf()メソッドを呼び出すと、再び開始できません。 サービスを再開するにはどうすればよいですか?私のアンドロイドサービスを再開する

+0

をあなたがしようとしたことがあり、およびこの答えを見て: http://stackoverflow.com/questions/13227697/how-to-restart-service-in-android-to-call-service-oncreate-again –

答えて

0

私は自分のアプリケーションでこの方法を使用しています:サービスの開始

mContext.stopService(new Intent(mContext, LocationProviderService.class)); 

は、サービスを停止

if(!HelperUtils.isMyServiceRunning(LocationProviderService.class, getApplicationContext())) 
    { 
     startService(new Intent(this, LocationProviderService.class)); 
    } 

isMyServiceRunning方法:

public static boolean isMyServiceRunning(Class<?> serviceClass,Context mContext) { 
    ActivityManager manager = (ActivityManager) mContext.getSystemService(Context.ACTIVITY_SERVICE); 
    for (ActivityManager.RunningServiceInfo service : manager.getRunningServices(Integer.MAX_VALUE)) { 
     if (serviceClass.getName().equals(service.service.getClassName())) { 
      return true; 
     } 
    } 
    return false; 
} 
関連する問題