アプリケーションが Android のアドレス帳の変更をリッスンする必要があります。ContentObserver
の変更を使用してリッスンできることを読みましたContactsContract.Contacts
。アプリケーションが閉じられると、ContentObserver のライフサイクルが終了するようです。
アプリケーションが開かれていない場合でも ContentObserver を機能させるにはどうすればよいですか?
アプリケーションが Android のアドレス帳の変更をリッスンする必要があります。ContentObserver
の変更を使用してリッスンできることを読みましたContactsContract.Contacts
。アプリケーションが閉じられると、ContentObserver のライフサイクルが終了するようです。
アプリケーションが開かれていない場合でも ContentObserver を機能させるにはどうすればよいですか?
アプリケーションが開かれていない場合でも ContentObserver を機能させるにはどうすればよいですか?
それは不可能です。の背後にあるポイントContentObserver
は、そのデータを表示するアクティビティに反映する必要があるデータへの変更など、実行中のアプリに影響を与える可能性のある変更を通知することです。アプリが実行されていない場合、ContentObserver
.
return START_STICKY;
コンテンツ オブザーバーをonCreate に登録する代わりに、OnStartCommandに登録します。わたしにはできる。
@Override
public int onStartCommand(Intent intent, int flags, int startId) {
getContentResolver().registerContentObserver(uri,true, new SMSObserver(new Handler(), getBaseContext()));
return START_STICKY;
}