为了共享数据,Android共享首选项与Intent extra

为了共享数据,Android共享首选项与Intent extra,android,performance,Android,Performance,在我的Android应用程序中,我必须将数据(与应用程序状态有关的变量)从一个活动传递到另一个活动。在其他活动中,我必须多次这样做。做这件事最好和更有效的方法是什么?我应该在每次需要时阅读共享首选项中的信息,还是应该在意向中作为额外信息发送 这实际上只取决于您需要数据的时间。如果您只在应用程序的生命周期内需要它,那么只需传递带有意图的数据即可。这将是最简单的。您可以将数据放入捆绑包中,以便更轻松地传递数据 如果您下次登录时需要它,或者如果您的应用程序因某种原因被终止,您需要保存它,请使用Shar

在我的Android应用程序中,我必须将数据(与应用程序状态有关的变量)从一个活动传递到另一个活动。在其他活动中,我必须多次这样做。做这件事最好和更有效的方法是什么?我应该在每次需要时阅读共享首选项中的信息,还是应该在意向中作为额外信息发送

这实际上只取决于您需要数据的时间。如果您只在应用程序的生命周期内需要它,那么只需传递带有
意图的数据即可。这将是最简单的。您可以将数据放入
捆绑包中
,以便更轻松地传递数据

如果您下次登录时需要它,或者如果您的应用程序因某种原因被终止,您需要保存它,请使用
SharedReferences

您还可以将其存储在
SharedReferences
中,并在
MainActivity
中打开它们,并传递某些数据。这取决于你需要什么。我希望这会有帮助,但如果你需要更好的解释,那么请更清楚一点你想要什么

如果您不熟悉
SharedReferences
,文档中有一个很好的示例可以帮助您入门


我认为这取决于你为什么需要这些数据。。。如果是应用程序的一些常规设置,我认为用户偏好会更好,因为它会持续存在,但如果只是其他活动所需的一些数据,您应该使用intent extras。

谢谢您的回答。坚持是一个需要考虑的重要因素。但是,在我的例子中,考虑到性能,我想知道哪种方法更好。因为我必须多次获取这些数据。我不确定它是否会有很大的不同,但可能使用
Intent
,因为它不需要打开任何东西或调用其他方法。如果满足您的需要,您还可以将它们存储在静态类中