-2
我想實現一個異步任務,從服務中的url獲取一個字符串。 我正在使用一個startedService,它調用異步任務獲取正確的字符串,更新公共數據庫類的內容並返回到主要活動,問題是我需要通知DB中的更改的列表適配器是在主要活動,我沒有從服務中獲得它,我是一個noobie,所以我不熟悉什麼更好的使用,啓動或綁定服務的工作,任何sugestions?在服務內創建一個異步任務
謝謝
我想實現一個異步任務,從服務中的url獲取一個字符串。 我正在使用一個startedService,它調用異步任務獲取正確的字符串,更新公共數據庫類的內容並返回到主要活動,問題是我需要通知DB中的更改的列表適配器是在主要活動,我沒有從服務中獲得它,我是一個noobie,所以我不熟悉什麼更好的使用,啓動或綁定服務的工作,任何sugestions?在服務內創建一個異步任務
謝謝
您可以使用廣播接收器: 在你的活動:
@Override
public void onResume() {
super.onResume();
// Register mMessageReceiver to receive messages.
LocalBroadcastManager.getInstance(this).registerReceiver(mMessageReceiver,
new IntentFilter("mybroadcast"));
}
// handler for received Intents for the "my-event" event
private BroadcastReceiver mMessageReceiver = new BroadcastReceiver() {
@Override
public void onReceive(Context context, Intent intent) {
// Extract data included in the Intent
String message = intent.getStringExtra("message");
Log.d("receiver", "Got message: " + message);
}
};
@Override
protected void onPause() {
// Unregister since the activity is not visible
LocalBroadcastManager.getInstance(this).unregisterReceiver(mMessageReceiver);
super.onPause();
}
而從服務利用到廣播:
Intent intent = new Intent();
intent.setAction("mybroadcast");
sendBroadcast(intent)
你可以用'BroadcastReceiver'了點。 –