非常によくある問題がありますが、それを解決するための適切な解決策/パターンを見つけることができませんでした。私のアプリケーションには、自動的に更新する必要がある 2 種類のデータがあります。
- 一般的なデータ
- ユーザー関連データ
ユーザーがログインしていない場合は、一般的なデータのみがダウンロードされて表示されます。ユーザーがログインしている場合は、そのユーザーのデータも処理されます。
これらのデータは、デバイスの起動時(アクションandroid.intent.action.BOOT_COMPLETED
がトリガーされた後)からWeb サービスから定期的にダウンロードする必要があります。私のアプリは SD に移動できるため、android.intent.action.EXTERNAL_APPLICATIONS_AVAILABLE
アクションにも登録する必要があります。
問題 1 : API レベル 11 (ハニカム)以降、すべてのアクションが停止状態のアプリケーションに送信されません。私はこれをよく理解していません.これは、アプリがインストールされたばかりで開かれていない場合、アプリがアクションをリッスンできないことを意味しますか? それとも、システムを再起動するたびに、アプリケーションの起動時にのみアクションがトリガーされるということですか?
問題 2 : アプリケーションが SD に移動された場合、SyncAdapter
s を実行できないため、一般的な戦略に頼らざるをBroadcastReceiver
得Service
ませんAlarm
。しかし、システムによって開始されないPendingIntent
かどうかをどのように理解できますか? SyncAdapter
(私はすでに によって を処理Account
していますAccountManager
)
これらすべてを処理するライブラリを知っていますか? かなり奇妙に思えますが、これは一般的な問題ではありませんか?