您好我在Manifest中注册了BroadcastReceiver。 我想将此接收器的数据发送到MainActivity,显示lis上的数据。 我做了一切在Receiver萌芽我不知道如何发送数据。
当函数onReceive可以工作时我将数据发送到后台活动, 即使应用程序最小化,这也应该有用。
我试着这个
Intent intent = new Intent(context, MainActivity.class);
intent .putExtra("value", data);
startActivity(intent );
但是我不希望onReceive立即开始工作。
答案 0 :(得分:0)
您应该将此数据保存到接收器中的preferences / file / sql数据库,并在活动开始时加载它们
答案 1 :(得分:0)
这里有一个关于如何实现首选项和保存数据的想法,然后你可以在任何Activity上检索它们。
public class Calc extends Activity {
public static final String PREFS_NAME = "MyPrefsFile";
@Override
protected void onCreate(Bundle state){
super.onCreate(state);
. . .
// Restore preferences
SharedPreferences settings = getSharedPreferences(PREFS_NAME, 0);
boolean silent = settings.getBoolean("silentMode", false);
setSilent(silent);
}
@Override
protected void onStop(){
super.onStop();
// We need an Editor object to make preference changes.
// All objects are from android.context.Context
SharedPreferences settings = getSharedPreferences(PREFS_NAME, 0);
SharedPreferences.Editor editor = settings.edit();
editor.putBoolean("silentMode", mSilentMode);
// Commit the edits!
editor.commit();
}
}