2015-06-25 63 views
1

我有一个面包屑式导航应用程序。每个级别都有自己的数据(如,名称,ID等)。静态队列vs共享首选项

我目前有一个自定义活动,它扩展了android活动,负责照顾导航方面。它使用一个包含每个级别的队列以及上面提到的数据。此队列是静态的(在自定义活动类中),用于确定用户所在的级别并为其下的所有级别提供数据。

这是不好的做法?我应该使用共享首选项吗?

感谢您的任何建议。

+0

你能发布与队列相关的代码吗?如果'SharedPreferences'会更好,则会更容易判断。 –

+0

而不是有一个全局队列,为什么不通过一个Bundle将相关级别的数据传递给每个活动? – loadedion

回答

2

好的。因此,您的静态队列的范围将是您的应用程序在内存空间中的范围。并且SharedPreference将一直提供到设备上的应用范围(直到用户从设备上卸载)。

因此,如果您的应用程序不再运行,那么您可能会失去导航轨迹。但是,如果它在SharedPreference中可用,那么您可以随时恢复您的应用程序的状态。

+0

在这种情况下,队列超出内存范围是可以的,因为当用户以任何方式返回并在导航树的根目录重新启动时,应用程序的安全性需要一个引脚。功能方面,它完美地符合我的目的。 我最关心的是这是否是不好的做法。在活动之间共享静态指南时,我找不到许多资源。 – whoknows

+0

那么你很好,如果它适合你的目的,SharedPreference只是与你的应用程序生活范围和雅客在轻量级形式的数据。 – user370305