Android 我应该使用什么方法跨任何类共享复杂对象

Android 我应该使用什么方法跨任何类共享复杂对象,android,global-variables,share,Android,Global Variables,Share,例如,我们有一个跟踪出租车司机的应用程序,一个出租车司机登录到该应用程序,并为给定的客户选择一个驾驶订单 在本例中,我们有一个表示大量数据的Order类,在仍然能够修改它的情况下,从任何地方访问该对象是非常重要的 从现在起,我们可以: 通过将额外的数据放入意图来传递它,但它不是什么东西 这使得代码可读,在某些情况下,它不是一个解决方案 将对象反序列化为json并将其存储到缓存中,我们仍然 需要不断更新此值,这是一个令人头痛的问题 游戏中有复杂的对象,一个错误,天知道什么时候 不匹配发生了 将其

例如,我们有一个跟踪出租车司机的应用程序,一个出租车司机登录到该应用程序,并为给定的客户选择一个驾驶订单

在本例中,我们有一个表示大量数据的Order类,在仍然能够修改它的情况下,从任何地方访问该对象是非常重要的

从现在起,我们可以:

  • 通过将额外的数据放入意图来传递它,但它不是什么东西 这使得代码可读,在某些情况下,它不是一个解决方案
  • 将对象反序列化为json并将其存储到缓存中,我们仍然 需要不断更新此值,这是一个令人头痛的问题 游戏中有复杂的对象,一个错误,天知道什么时候 不匹配发生了
  • 将其存储到扩展应用程序的类中,如下所示 这是我目前正在测试的方法,但我对此表示怀疑 当应用程序崩溃/android将随机释放应用程序资源时,我需要使用 黑魔法和缓存
这是一个我认为在许多应用程序中都存在的问题,比如Spotify当前的播放曲目等


还有其他方法吗?

尝试使用sqlite数据库。在这种情况下,如果您自己创建一个健壮的GetOrders API方法,您可以从应用程序的任何位置访问数据

创建数据库的方法

在这种情况下,如果应用程序退出或崩溃,您将永远不会丢失任何数据。而且,与将数据缓存在内存中相比,它实际上没有什么区别