1

サービスを開始および停止するための 2 つのボタンを持つメイン クラスがあります。

public void onClick(View src) {
    switch (src.getId()) {
    case R.id.buttonStart:
        Log.d(TAG, "onClick: starting srvice");
        myService = new Intent(this, MyService.class);
        startService(myService);
        break;
    case R.id.buttonStop:
        Log.d(TAG, "onClick: stopping srvice");
        stopService(myService);
        break;
    }
}

現在の GPS 座標をサーバーに送信するサービスを開始します。それは完全に開始しますが、ボタンをクリックしても停止しませんでした。

MYService.java には、このコード onDestroy メソッドがあります。

public void onDestroy() {
    Toast.makeText(this, "My Service Stopped", Toast.LENGTH_LONG).show();
    Log.d(TAG, "onDestroy");
}

このサービスを強制終了する方法を教えてください。

4

2 に答える 2

0

これをサービスに追加してみてください

@Override
public int onStartCommand(Intent intent, int flags, int startId) {
    this.startId = startId;
    return mStartMode;
}

@Override
public void onDestroy() {
    stopSelf(startId);
}
于 2011-09-20T07:35:39.887 に答える