私は英語が得意ではありませんが、自分の問題をうまく説明できるように努めます。
したがって、問題は次のとおりです
。1)ローカルサービスがあります
。2)それを開始してからバインドします。3) そのサービスを終了しようとすると問題が発生します。クラスServiceConnectionの実装からのonServiceDisconnectedメソッドは呼び出されません。手動で (設定から)、unbindService、stopService、または unbindService と stopService の組み合わせで閉じても、onServiceDisconnected は呼び出されません。私は何を間違っていますか?
ショートコードは次のとおりです。
protected ServiceConnection mServerConn = new ServiceConnection() {
@Override
public void onServiceConnected(ComponentName name, IBinder binder) {
Log.d(LOG_TAG, "onServiceConnected");
}
@Override
public void onServiceDisconnected(ComponentName name) {
Log.d(LOG_TAG, "onServiceDisconnected");
}
}
public void start() {
// mContext is defined upper in code, I think it is not necessary to explain what is it
mContext.bindService(i, mServerConn, Context.BIND_AUTO_CREATE);
mContext.startService(i);
}
public void stop() {
mContext.stopService(new Intent(mContext, ServiceRemote.class));
mContext.unbindService(mServerConn);
}
Android 2.2のエミュレーターでこのコードをテストしています