有很多方法。 我建議使用打算,因爲它是很容易
public class SomeActivity extends Activity{
private MyBroadcastReceiver receiver;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
receiver = new MyBroadcastReceiver();
this.registerReceiver(receiver, new IntentFilter(MyBroadcastReceiver.ACTION));
}
@Override
public void onDestroy() {
super.onDestroy();
this.unregisterReceiver(receiver);
}
private class MyBroadcastReceiver extends BroadcastReceiver{
public static final String ACTION = "com.example.ACTION_SOMETHING"
@Override
public void onReceive(Context context, Intent intent) {
String test = intent.getStringExtra("dataToPass");
}
}
}
發送到活動服務類
Intent intent = new Intent();
intent.setAction(SomeActivity.MyBroadcastReceiver.ACTION);
intent.putExtra("dataToPass", test);
context.sendBroadcast(intent);
謝謝你,是的,這可能會有所幫助。然而,我最終還是做了其他的事情。我在我的活動中啓動了一個asyncTask,它不斷地在我的類中調用一個方法來查看是否有可用的數據。這最終使我的表現提高了10倍以上。你認爲我的方法有消極的一面嗎? – Saik