greywolf82的答案是正确的,但我想为此添加一些信息。
在开发我的Android应用程序(使用Xamarin)时,我注意到无论何时从Visual Studio重新启动该应用程序,我的数据都会恢复为几个月前的数据。只是停止并从VS重新运行它,还是完全卸载了该应用程序并重新安装它都没有关系。
还值得注意的是,我们从未明确告诉应用程序存储备份。
从Visual Studio启动时,备份似乎还会覆盖较新的数据,并且我们有用户使用应用程序的发行版的报告,并且备份也覆盖了较新的数据。
由于我不确切知道何时进行备份和还原,因此此功能似乎只会引起问题。
我们已经修改了AndroidManifest,如以下xml所示:
<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android" package="com.XXXXXXX" android:versionName="8.0.0" android:installLocation="auto" android:versionCode="439">
<uses-sdk android:minSdkVersion="14" android:targetSdkVersion="24" />
<application
android:label="@string/appName"
android:icon="@drawable/icon_small"
android:installLocation="internalOnly"
android:largeHeap="true"
android:allowBackup="false"
android:fullBackupOnly="false"
/>
...
</manifest>
一旦我们将值显式设置为false,一切似乎都可以正常工作。我希望这是一个选择加入的功能,但是...似乎默认情况下对于未指定任一种方式的应用程序来说,它可能处于启用状态。