5

サービスも含む Android アプリを開発しています。ICS の最近のアプリ リストの「スワイプして終了」機能は、期待どおりにアプリを閉じますが、サービスはそれと共に終了するだけであり、クリーンアップするように指示する onTaskRemoved() コールバックを受信しません (またはそのことについては onDestroy())。 ):

http://developer.android.com/reference/android/app/Service.html#onTaskRemoved(android.content.Intent )

これにより、ステータス バーに通知アイコンが残るので、アプリの終了時にこれが削除されていることを確認する必要があります。

Manifest.xml で android:stopWithTask を false (および true) に設定しようとしましたが、違いはないようです。

    <service 
        android:name="com.test.TestService"
        android:stopWithTask="false" 
    />

onTaskRemoved() コールバックが受信されない理由はありますか?

4

3 に答える 3

0

私がしたことは、各アクティビティが onCreate() で startService() で指定されたサービスを開始し、onDestroy() で stopService() でそれを停止することです。が呼び出されると、スワイプの動作を監視できます。欠点は、各アクティビティにペアリングされたサービスを装備する必要があることです。これは、アプリにさまざまなアクティビティがある場合に厄介です。

于 2015-01-29T08:38:08.017 に答える
0

ユーザーがスワイプした瞬間に実行中の場合Service、このメソッドが呼び出されます。

Serviceその瞬間に実行されていることを確認してください。

于 2012-09-25T08:30:54.103 に答える