4

私は、以下を実行するsqllite 3.7.4を使用してAndroidタブレットアプリを開発中です:

  1. UI から情報を取得します

  2. いくつかのロジックを実行し、関連情報を sqlite データベースに保存します

  3. 保存された情報は、ネットワーク経由で即時またはスケジュール間隔で (例: xyz 日付の 5:00) に送信する必要があります。

現在、データベースに挿入された新しい情報についてデータベースを常にポーリングするディスパッチャ メカニズム (スレッド) を開発しました。スレッドは情報を取得し、ネットワーク モジュールに送信します。

しかし、毎回のポーリングはオーバーヘッドになるため、これは正しいアプローチではないと思います。実行するものが何もない場合があります 5 秒ごとにポーリングするため、リアルタイムではありません

そう

データベースで情報が更新されるとすぐにネットワーク モジュールにトリガーを送信する方法はありますか?

または、このタスクを達成するためのより良い方法はありますか?

前もって感謝します。

4

4 に答える 4

-2

これがあなたを助けることを願っています

 private Handler h;
    // in create time
        h = new Handler();


// call where you want
h.postDelayed(myRunnable2, 1000); // after 1000 millisecond this function call automatically 

// this function 
private Runnable myRunnable2 = new Runnable() {
        public void run() {
                              // do some thing

                h.postDelayed(myRunnable2, 1000);

        }
    };
于 2013-01-04T11:41:28.460 に答える