如何确保在发布更新时我的应用数据不会被删除?

时间:2015-05-08 00:29:19

标签: java android

我的Android应用程序使用serializable保存一个对象数组以进行缓存,但是当发布更新时,数组将被完全删除,用户必须重新执行所有输入。这是什么解决方案? 提前致谢

2 个答案:

答案 0 :(得分:1)

您是如何将可序列化对象存储到缓存中的?包管理系统将保留旧数据以进行应用程序的更新安装。

    ObjectOutputStream objectOutputStream = null;
    try {
        objectOutputStream = new ObjectOutputStream(new FileOutputStream(
                getCacheDir() + File.separator + "object"));
        MyObject object = new MyObject();
        object.setData(15);
        object.setName("name");
        objectOutputStream.writeObject(new MyObject());
    } catch (IOException e) {
        // TODO Auto-generated catch block
        e.printStackTrace();
    } finally {
        if (objectOutputStream != null) {
            try {
                objectOutputStream.close();
            } catch (IOException e) {
                // TODO Auto-generated catch block
                e.printStackTrace();
            }
        }
    }

答案 1 :(得分:0)

如果您可以在设备上存储数据,请查看ActiveAndroid。如果您希望它永远存在,请考虑在云中构建一个安静的API。