【问题标题】:I lose my static data on my app after calling google maps调用谷歌地图后,我的应用程序上的静态数据丢失了
【发布时间】:2015-10-27 18:36:46
【问题描述】:

我正在开发一个包含商店列表的应用程序。对于每个商店,使用 google services API (v2) 我可以打开并显示地图,并在商店位置添加一个标记。 一切正常。我可以返回列表并选择另一家商店。 所有数据都存储在静态数组列表中。

问题: 当我在谷歌地图上时,如果我点击标记,然后点击按钮来获取路线(由谷歌地图实现),它会打开谷歌地图应用程序并显示路线。然后,当我返回时,我的数据就会丢失!所有数组列表都变为空。

还有什么想法?谢谢。

【问题讨论】:

标签: android google-maps


【解决方案1】:

根据Activity lifecycle

一个活动基本上可以存在于三种状态:

(...)

已停止

该活动完全被另一个活动( 活动现在在“背景”中)。停止的活动也仍然 活着(Activity对象保留在内存中,它维护所有 状态和成员信息,但不附加到窗口 经理)。但是,它不再对用户可见,并且可以 当其他地方需要内存时被系统杀死。

因此,当您的 Activity 根据此定义停止时,如果设备没有足够的内存(或其他任务需要它),或者如果在“设置”菜单的“开发人员选项”中名为“不要保留活动”(在用户离开时销毁活动)被选中,您的活动将被终止,您的所有静态字段都将丢失。

为避免这种情况,您可能需要确保保存 Activity 的状态,以便稍后恢复 ir。看看http://developer.android.com/intl/es/training/basics/activity-lifecycle/recreating.html

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2017-01-12
    • 1970-01-01
    • 1970-01-01
    • 2021-02-15
    • 2019-02-18
    • 2020-01-05
    • 1970-01-01
    • 2023-03-21
    相关资源
    最近更新 更多