当我们想要一个意图将一些数据传送到另一个应用程序组件时,我们会使用一个额外的意图。意图只是一个键值对。我们首先将我们的密钥定义为一个公共常量,并给它一个值。例如
public static final String extra_key = "com.example.myapp.MESSAGE";
我们还必须为键分配意图需要携带的数据。例如
String extra_value = editText.getText().toString();
然后我们做一个额外的意图,如:
intent.putExtra(extra_key, extra_value);
我的问题:
为什么密钥必须是公开的?
为什么我们首先需要初始化key,为什么我们不能直接声明它,因为它无论如何都会被赋值(intent要携带的数据)。那么为什么我们不能做类似的事情
public static final String extra_key;
我已经读过键值应该包括反向域名,以便它是唯一的,以防其他包进入被意图所承载。
先感谢您。