通过Intent的值会在某个时间返回null

时间:2013-07-15 05:36:14

标签: android android-intent

我通过Intent传递一些值,在某些情况下,通过它传递的值返回null。在设置意图之前,该值不为空。这是我设置意图的代码。

Intent propertyIntent = new Intent(mContext , SomeActivity.class);
propertyIntent.putExtra(START_MODE_TAG,MODE_EDIT_RECORDING);
propertyIntent.putExtra(ACTIVITY_MODE_TAG, "dm");
propertyIntent.addFlags(Intent.FLAG_ACTIVITY_REORDER_TO_FRONT);
propertyIntent.putParcelableArrayListExtra("det_list", detList);
mContext.startActivity(propertyIntent);

以下是用于获取意图值的代码

passedModeName = getIntent().getStringExtra(DMApplication.START_MODE_TAG);

只有START_MODE_TAG值返回null rest all正确返回。我也试过设置onNewIntent()。但没用。

我在其中使用的常数

public static final String ACTIVITY_MODE_TAG="activity_mode";
public static final String START_MODE_TAG="StartMode";
public static final String MODE_NEW_RECORDING="new";
public static final String MODE_EDIT_RECORDING="edit";
public static final String MODE_REVIEW_RECORDING="review";
public static final String MODE_COPY_RECORDING="copy";
public static final String MODE_LAUNCH_RECORDING="launch";

2 个答案:

答案 0 :(得分:0)

您应该按以下方式获取额外数据。

Bundle extras = getIntent().getExtras();
selectedGroupId = extras.getString(DMApplication.START_MODE_TAG);

答案 1 :(得分:0)

检查键* DMApplication.START_MODE_TAG *是否与* START_MODE_TAG *相同且MODE_EDIT_RECORDING不为空。