【问题标题】:android : Save a value even if the app was closedandroid : 即使应用程序关闭也保存一个值
【发布时间】:2015-01-15 18:03:17
【问题描述】:

我正在做一个项目,我需要保存一个对象列表(我已经创建,比如 device.java),并且即使在重新启动应用程序后也能够检索它
我被告知要使用 SharedPreferences 但它似乎不适用于非内置对象.. 知道该怎么做吗? 非常感谢

【问题讨论】:

    标签: android list object


    【解决方案1】:

    在android中,数据存储可以有多种方式

    1. 共享首选项 - 以键值对的形式保存值。即使应用程序关闭或手机关闭再打开,数据仍然可用。

    2. SQLITE - 用于 android 移动应用程序的 Sql 数据库。数据永远存在。类型对象的数据可以存储在表中,并在需要时重试。

    3. 内部存储 - 在设备内存中存储私有数据。

    4. 外部存储 - 将公共数据存储在共享外部存储上。

    在所有这些选项中,SQLITE 可以满足您的需求。参考这个链接。

    http://developer.android.com/guide/topics/data/data-storage.html#db

    【讨论】:

    • 外部存储是指在我们(应用所有者的)服务器/数据库上吗?
    【解决方案2】:

    有一个名为 GSON 的库,它可以将对象序列化为简单字符串的 json。您可以在应用程序关闭时将其保存到共享首选项中。并在需要时对它们进行脱毒。

    device obj = new device ();
    Gson gson = new Gson();
    String json = gson.toJson(obj);
    

    这是在首选项中编写它的方法:

    PreferenceManager.getDefaultSharedPreferences(context).edit().putString("myList", "json").commit();
    

    图书馆链接:

    https://code.google.com/p/google-gson/

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2017-08-03
      • 2017-03-22
      • 1970-01-01
      • 1970-01-01
      • 2017-04-01
      • 1970-01-01
      相关资源
      最近更新 更多