2012-04-18 41 views
3

我已经在谷歌商店发布我的应用程序,现在我想更新它。更新应用程序是否清除共享首选项或删除应用程序设置的警报?

但我想放心,我的应用程序共享首选项中不会丢失存储的数据。我也在开始通知的应用程序中设置了一些警报,我也不想失去它们。

我不知道如何更新应用程序的工作原理?它重写这些东西吗?无论如何,我可以在全球发布之前对其进行测试?

我要指出,我在这个版本中所做的更改含有清单中有些变化:我改变targetSdkVersionminSdkVersion(它曾经有minSdk=8我现在已经改成了4并添加targetsdk=15),我给了一个进程的名字到我的alarmservice(这是一个intentservice来设置闹钟),但后来决定改变它,它现在没有一个流程名称。

回答

7

通常,SharedPreferences(以及其他用户数据)将在更新过程中保留,但有时由于某些“未知”问题,数据可能会丢失,我想它已经超出了你的控制范围。所以,你可以简单地相信SharedPreferences将被保留。

至于报警,您是如何设置这些报警的?如果你在代码中设置它们,只要你在代码中正确设置,它应该是100%。

当然,测试的最佳方法是在将设备推向市场之前,在设备上安装更新的应用程序。首先,您应该在手机上安装市场版本的应用程序,然后将您的应用程序与市场密钥库导出到本地计算机上,最后在手机上安装导出的版本(安装程序应通知您有关更新)。你可以检查这些设置是否仍然存在。

导出时,最重要的是确保您使用的是与市场版应用程序一样使用的相同密钥库。

希望这会帮助你。

+0

非常感谢。我按照您的说法对其进行了测试,并保留了我的共享偏好和警报。 :) – Marjan 2012-04-18 11:16:45

+0

'由于一些“未知”问题,数据可能会丢失,这是不明确的!来自*文档*的任何引用? * Android团队*? – 2014-07-18 06:55:58

+0

@MuhammadBabar,不会,这是来自我自己的经验。而且,是的,它是模棱两可的。如果问题源于系统错误或者我的代码错误或者其他问题,我太忙了,无法追查,但是我的一个用户报告了这个偏好。所以,对不起,这就是我所能说的。 – 2014-07-18 12:42:40

2

SharedPreferences存储并将不能更新应用程序。关于报警我不确定,对不起。

为了测试您的更新,只需在您的设备上安装您的市场版本,设置您的东西(闹钟,sharedprefs)就像普通用户会做的一样,只需在手机上安装APK即可上传到市场(签名的apk !)。安装应该与您的用户将得到的更新相同...

+0

非常感谢。我按照您的说法对其进行了测试,并保留了我的共享偏好和警报。 :) – Marjan 2012-04-18 11:17:56

+0

@WarrenFaith:如果我想清除更新中的所有prependo数据,该怎么办?我在更新中将新表添加到数据库中。该表不是在代码中创建的。只有数据库被添加到资产中。所以我想要做的是更新清除以前的数据库并将其替换为新数据库。 – Ashwin 2012-10-04 15:23:05

+0

@Ashwin这与这里的问题无关,但看看我的[回复](http://stackoverflow.com/a/4499476/180538)的第一部分到另一个问题...双重评论isn这里也不欢迎。 – WarrenFaith 2012-10-05 08:34:52

相关问题