0

サービスを開始/停止できるアクティビティがあります。サービスでは、x分ごとにBroadcastReceiverを起動するalarmManagerがあります。すべてのBroadcastReceiverからのいくつかのデータをArrayListに保持し、次のBroadcastReceiverで別のときに使用(追加/削除)する必要があります。サービスで静的ArrayListを作成しようとしましたが、停止(再起動)するとデータが失われます。そして、私が再び私の主な活動を始めるとき-私はライフサイクルのためにデータを失います...

したがって、BroadcastReceiverでアクセス可能なグローバル配列リストが必要です。そして、この配列は、onBootイベントから電話が死ぬまで常に利用可能である必要があります;)

何か案は?

4

3 に答える 3

0

データにデータベースを使用し、開始時にデータベースから読み取り、停止時に書き込むことができます。Andorid のチュートリアルでは、データベースの処理方法について説明しています。

于 2012-12-15T21:07:30.030 に答える
0

たとえば、新しいクラスなど、サービスの外部で静的配列を作成する必要があります。

于 2012-12-15T21:09:48.360 に答える
0

停止するときは確認してください-vmを終了せずfinish()、アクティビティのみを終了してください。
永続性が必要な場合は、共有設定 (最も簡単) またはデータベースを使用してください。

于 2012-12-15T21:35:44.980 に答える