1

タイマーはアプリで停止し、制限があり、すべてのタイマーが独自のスレッドを起動するため、タイマーの代替手段を探しています。時々、約 20 ~ 30 個のタイマーを起動する必要があります。

時間内にいくつかのイベントを設定する必要があり、アプリ画面が表示されるようになりました。出来ますか?

4

2 に答える 2

1

AlarmManagerを使用する必要があります

CommonsWare が言うように、それにはいくつかの制限がありますが、それは問題ありません。ユーザーが強制的にアプリケーションを閉じた場合、それは彼がアプリケーションを使用したくないことを意味します (それ以上またはメモリの並べ替えのため)...

そして、ユーザーが強制的にアプリを閉じるとリッスンできないため、解決策があります (ただし、最善ではない可能性があります)。1 つの方法は、アプリケーションを起動するたびにイベントを再スケジュールすることです。これが良い解決策ではないことはわかっていますが、.....他に方法はまだありません

これが良い例です。

于 2012-10-26T12:47:00.747 に答える
1

これは、「アプリで死ぬ」の定義に応じて、可能である場合と不可能である場合があります。

将来の特定の時間に呼び出されるようAlarmManagerにスケジュールするために使用できます。PendingIntentsそれらPendingIntentsは活動を開始できます。これは、アプリが通常の原因で「停止」した場合に機能します。

でも:

  • ユーザーが設定を介してアプリを強制終了した場合、アラームはスケジュールされておらず、これを停止するためにできることは何もありません (またAlarmManager、何とかこれを乗り切るための代替手段もありません) 。

  • ゲーム、ナビゲーション、ビデオ、またはNotification通話がアクティビティによって中断されることをユーザーが必ずしも歓迎するとは限りません。

于 2012-10-26T09:26:25.343 に答える