いろいろなところからサービスを停止しています。コマンド「stopService(Intent intent)」の送信者が NetworkReceivar クラス (BroadcastReceiver を拡張) であったことを確認するにはどうすればよいですか??
これは、これをより明確にするための私のコードです:
public class NetworkReceiver extends BroadcastReceiver{
public void onReceive(Context context, Intent intent) {
boolean isNetworkDown = intent.getBooleanExtra(ConnectivityManager.EXTRA_NO_CONNECTIVITY, false);
if (isNetworkDown) {
context.stopService(new Intent(context, MyService.class));
}
私のサービスクラス:
public void onDestroy() {
Log.i(TAG, "OnDestroy");
// if came from NetworkReceiver do something.
this.updater.interrupt();
this.updater = null;
super.onDestroy();
}