在广播接收器中,我想启动我的应用程序(活动)并传递一些数据。
我的问题是额外的东西似乎没有延续到活动中。我正在尝试获取onNewIntent(Intent i)
函数内的数据。
有任何想法吗?
这是我目前在BroadcastReceiver中的尝试:
Intent intSlider = new Intent();
intSlider.setClass(UAirship.shared().getApplicationContext(), SliderMenuActivity.class);
intSlider.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
intSlider.putExtra("action", ScreensEnum.Object);
intSlider.putExtra("objectId", objectId);
intSlider.putExtra("objectCode", objectCode);
intSlider.putExtra("userId", userId);
UAirship.shared().getApplicationContext().startActivity(intSlider);
编辑 - 添加了 onNewIntent() 和 onCreate() 中使用的代码
以下代码onCreate()
在应用程序当前未运行时工作得很好。因为当应用程序已经在运行时,相同的代码在函数中不起作用(即没有额外内容)onNewIntent()
。
Intent intent = getIntent();
if(intent.hasExtra("objectId")) {
loadDetail(intent.getStringExtra("objectId"), "2w232");
}