私はAndroidアプリケーションを作成していますが、GUI部分とブロードキャスト受信機で構成されています。ブロードキャスト受信者は、SQLiteテーブルに新しい行を追加することができます。これは一般にUIによって使用されます。AndroidでSQLテーブルの変更を処理する方法
問題:UI部品が(フォアグラウンドで)実行中の場合、ブロードキャスト受信者はSQLに新しい行を追加できますが、refresh()メソッドが呼び出されるまでその行はGUIに表示されません。しかし、バックグラウンドのブロードキャスト受信者のOnReceive()メソッドから、このリフレッシュの必要性についてフォアグラウンドのUIアクティビティをどのように通知するかについてはわかりません。
私は、Win/* NIXのネイティブソフトウェア開発に経験があり、Androidのイベントに似たものを見つけようとしましたが、成功しませんでした。
私は間違った方法ですか?
BroadcastReceiverは、新しい着信SMSを処理して銀行通知を追跡するため、これがデータベースの新しい行の唯一の送信元です。 –
カーソルオブザーバーに関する情報をありがとう、私はそれを試してみます –
残念ながら、お手伝いしていません。アプリケーションがデータベース内の既存のレコードの1つを更新するときにカーソルオブザーバ通知を受け取ることができますが、新しいレコードの追加を処理できません。ハンドラはアクティビティからもブロードキャストレシーバからも新しい行作成のために呼び出されませんでした。新しい行を追加することはできますか? –