データベースでデータが変更されたときに通知を受け取る方法を知りたいのですが。
これには解決策がありますか?
実際にデータをプッシュして取得する方法はわかっていますが、変更が発生したときに通知する方法がわかりませんデータベース内のデータが変更されたときに通知を受け取ります
答えて
データベース内のデータを変更する責任がアプリである場合は、あなたのデータに挿入、更新、または削除操作があることをアプリに通知するコールバックを作成します。
あなたは、ローカルデータベースなどのsqliteの使用している場合:
まずアプローチ、AndroidのSDKコンテンツプロバイダ、コンテンツオブザーバークラスを使用します。ローカルのsqliteの一部のテーブルを監視するコンテンツオブザーバを作成します。
http://www.grokkingandroid.com/use-contentobserver-to-listen-to-changes/
あなたはORMを使用している場合は、変更内容を通知するORMでのコールバックがあります。たとえばAsyncSessionを使用してGreenDao:
AsyncSession asyncSession = App.getInstance().daoSession.startAsyncSession();
asyncSession.setListener(new AsyncOperationListener() {
@Override
public void onAsyncOperationCompleted(AsyncOperation operation) {
// do whats needed
}
});
asyncSession.insert(MyObject);
あなたがRealm.IOを使用する場合は、通知するレルムトランザクションからのコールバックがありますが、更新が行われています。
Realm realm = Realm.getDefaultInstance();
realm.executeTransaction(new Realm.Transaction() {
@Override
public void execute(Realm realm) {
MyObject myobject = new MyObject();
myobject.setId(UUID.randomUUID().toString());
myobject.setName("My object name test");
realm.copyToRealm(myobject);
}
}, new Realm.Transaction.Callback() {
@Override
public void onSuccess() {
//realm already update
Log.e("lh", "this callback i can use to notify. after save " + realm.allObjects(MyObject.class).size());
realm.close();
}
});
バックエンドの変更。
変更がバックエンドにある場合。可能な解決策は、プッシュ通知を送信し、アプリでバックグラウンドサービスを開始することです。
このURLには、google cloudへのプッシュ通知を行うためのPHPスクリプトがあります。
https://gist.github.com/prime31/5675017
あなたはあなたの中にAndroidアプリをGoogleクラウドプッシュ通知の受信機を取り付けて、あなたはRESTエンドポイントを使用してデータベースを公開する場合は、新しいデータをダウンロードするためのHTTPリクエストを行います、特定のサービスを作成する必要があります。
これはデータを更新する外部アプリケーションですので、 –
あなたはバックエンドにデータがあり、mysqlだと言うので、サーバーはバックエンド側のアプリに変更があることをアプリに通知する必要があります。私は解決策を付けます。 –
最も簡単な方法は、データベースに行を保存し、データが変更されたときにその値を更新することです。
- 1. DTE.ActiveDocumentが変更されたときに通知を受け取ります。
- 2. データベースが変更されたときに通知を受け取るC#
- 3. postgresqlデータベースが更新されたときに通知を受け取る
- 4. 通知が通知されたときに通知を受け取る方法
- 5. データベース内のテーブルが変更されたときの通知
- 6. MIDI送信先または送信元が変更されたときに通知を受け取ります
- 7. ワークステーションがロックされたときに通知を受け取ります
- 8. RegistryKeyの値が変更されたときに通知を受け取ります。
- 9. 注目のステージが変更されたときに通知を受け取ります
- 10. UIPageViewControllerのページが変更されたときに通知を受け取ります。
- 11. Silverlight 4でフォーカスが変更されたときに通知を受け取りますか?
- 12. Eclipse TextEditorでカーソル位置が変更されたときに通知を受け取ります
- 13. Android&Rx Java 2:オブジェクトが変更されたときに通知を受け取ります
- 14. アダプタの内容は変更されましたが、ListViewは通知を受け取りませんでした
- 15. ステータスバーにカスタム通知が展開されたときに通知を受け取ります。
- 16. firebase storageでデータが変更されたときに通知を受け取る方法は?
- 17. プロパティ・ページがビュー・クラス内で変更されたときに通知を受け取る方法
- 18. データ変更に関する通知を受け取る
- 19. データベースが変更されたときに通知する
- 20. howtoはメディアボリュームの変更通知を受け取りますか?
- 21. 私のUIImageView.imageプロパティが変更されたときに通知を受ける方法はありますか?
- 22. JavaScriptがロードされ、通知を受け取ります。
- 23. スマートフォンの電源を入れたときに通知を受け取ります
- 24. データベースにデータを追加したいときに通知を受け取ります
- 25. iOS voip app sleep&Reachabilityが変更されました。通知を受け取ることはできますか?
- 26. Socrataでデータが更新されたときに休憩通知を受け取る方法を探す
- 27. PERFORCE:ファイルに「時計」を付けることができます。ファイルが変更されたときに通知を受け取りますか?
- 28. デバイストークンがバックグラウンドで更新されたときに通知を受け取りません
- 29. UITextFieldがFirstFirstResponderになったときに通知を受け取ります
- 30. Slack:Botがオフラインになったときに通知を受け取ります。
これは、放送受信機を使用して行うことができます! –
私はPHPスクリプトでリンクされているmysqlデータベースを使用しているので、私はブロードキャストレシーバを使用できるかどうか分かりません –