0

我有一个连接到数据库的 Android 应用程序。我想编写一个后台线程来不断更新数据库中的数据,并且我想将更新的数据显示为通知我该怎么做?例如,在 Skype 中,如果我们收到新消息,我们将收到正确的通知......就像我想做的那样......有人可以帮助我吗?

4

1 回答 1

0

这可以通过以下方式完成。您Activity应该包含以下内容:

//the method which changes the data in the database
changeDataBD(params) {
    new Thread(new Runnable() { 
        changingDataDB(params);
    }).start();
}

//create an handler
private final Handler myHandler = new Handler();

private void changingDataDB(params) {
    //.... changing of data in DB according to passed params

    //update the UI using the handler and the runnable
    myHandler.post(updateRunnable);

}

final Runnable updateRunnable = new Runnable() {
    public void run() {
        //call the activity method that updates the UI
        updateUIandShowNotification();
    }
};

private void updateUIandShowNotification() {
      // ... update the data on UI
      // ... show a notification
}

您还可以创建一个监听器来监视数据库中的更改。它应该启动这个线程。

于 2012-05-02T13:18:46.343 回答