询问 class 名称是否应包含在 Android 的 EXTRA TAG 中?

Asking about if the class name should be include in the EXTRA TAG for Android?

我正在阅读一本名为 Big nerd ranch 的书来学习 android .. 作者使用了一个额外的标签来表达这样的意图

public static final String EXTRA_ANSWER_IS_TRUE = "com.bignerdranch.android.geoquiz.answer_is_true";

geoquiz 是一个包,它包含三个 classes: 1.问答活动 2.作弊活动 3 对错

和 QuizActivity 中的 Extra 标签 class ..

我的问题是.. 应该这样写

    public static final String EXTRA_ANSWER_IS_TRUE = "com.bignerdranch.android.geoquiz.QuizActivity.answer_is_true";

是作者弄错了还是这是正常的事情?

您可以将任何字符串写入EXTRA_ANSWER_IS_TRUE。它只是一个唯一的密钥标识名称。您要在两个 Activities.

之间共享的键值

示例:

假设如果你想将一些信息从一个 Activity 传递给第二个 Activity 那么

  Activity1:
  public static final String EXTRA_ANSWER_IS_TRUE = "Activity1";
  Intent i = new Intent(yourActivity.this,Activity2.class);
  i.putExtra(EXTRA_ANSWER_IS_TRUE , "message");


  Activity2:
  Bundle extras = getIntent().getExtras();
  String str = extras.getString(Activity1.EXTRA_ANSWER_IS_TRUE);