Android intent额外消息与静态变量

The*_*awk 6 android android-intent android-activity

将intent用于消息而不是仅仅在java中声明静态变量并从新活动中调用它的目的是什么?这样对我来说似乎更容易,因为你可以让静态变量成为你想要的任何东西(即ArrayList,Object等).

public class FirstActivity extends Activity {
    public static String name;
... 
    Intent intent = new Intent(FirstActivity.this, SecondActivity.class);
    name = "Robert";
    startActivity(intent);
}

public class SecondActivity extends Activity {
...
    textView.setText(FirstActivity.name);
}
Run Code Online (Sandbox Code Playgroud)

Sto*_*ica 5

通过使用附加功能启动SecondActivity,您可以使其更具可重用性.许多股票活动以这种方式工作,这就是为什么你可以重复使用相机活动来拍摄和保存照片,因为它不会假设谁在调用它.

在您的情况下SecondActivity取决于FirstActivity已加载在JVM中.我不会指望这一点,并且在活动之间存在这种依赖性当然不是推荐的做法.不要这样做.根据SDK的建议,使用extras在活动之间传递值.