在我的Xamarin Android应用中,我在清单中设置了以下内容:
<application android:allowBackup="false" />
我必须这样做,因为每次安装该应用程序时,它都会在存储某些信息时跟踪sqlite数据库的先前图像。一种在将该行添加到清单中之后,每次我重新安装该应用程序时,我都会使用一个干净的数据库,因此以前的信息都不会被使用。
但是这会带来另一个问题。我的应用程序上有一个按钮,可以简单地将本地数据库的副本创建到外部存储。如果我未在清单中设置allowBackup =“ false”,则此副本可以正常工作,但是由于我不得不(针对前面提到的问题),我发现自己位于无法同时进行这两项工作(即,每次安装后都清洁DB,并且有可能将DB的副本创建到外部驱动器)。
我认为可能的解决方法可能是在清单中保留allowBackup =“ false”,但在创建数据库副本之前将其更改为“ true”。然后,我可以将标志更改回“ false”。
但是我怎么能做到这一点?我还没有在网上找到任何东西。谢谢。
同样,备份的目的是在所有情况下(包括您不喜欢的情况)进行还原(由于种种原因,由于我看不到您的应用为何无法继续使用其拥有的数据的原因,这仍然不清楚在卸载该应用程序之前可以正常工作),因此基本上您不希望备份,而应将其设置为false。
android: allowBackup
属性。您可以通过将tools:replace="android:allowBackup"
添加到application
来尝试以下方法。<application android:allowBackup="false"
tools:replace="android:allowBackup"
...
</application>
添加工具参考:xmlns:tools="http://schemas.android.com/tools"
中的<manifest ...>
。