应用关闭 Xamarin Forms 后丢失 data/files

Losing data/files after app closes Xamarin Forms

我正在使用 Xamarin 开发跨平台应用程序,但遇到了这个问题。 每次我启动我的应用程序时,我之前保存的所有数据都会丢失。 为了提供更多详细信息,我使用 SQLite 来保存一些信息,甚至将一些图像文件存储在应用程序的默认目录中。当我是 运行 应用程序时,我可以成功持久化所有内容,甚至检索我刚刚持久化的数据。但如果我关闭应用程序并重新启动它,所有信息和文件都会消失。 为了获取目录,我使用了 Xamarin 教程中建议的下面的代码。

string documentsPath = Environment.GetFolderPath(Environment.SpecialFolder.Personal); 
var path = Path.Combine(documentsPath, sqlite Filename);

目前我的测试重点是 Android,所以我不知道它是否发生在其他平台上。我也在使用 Trial License,可能是与它相关的一些限制。 我也在用 Visual Studio 2013.

有人对此有想法吗?

谢谢

如果 "launching app" 你的意思是从 VS 开始新的调试会话,只需转到工具 - 选项 - Xamarin - Android 设置并勾选 "Preserve application data/cache on device between deploys" 选项。

Xamarin Studio 应该在某处有相同的选项。

如果您在 VS 上开发应用程序并将其部署到测试设备,数据可能不会持续存在,如下所述。

我发现,当我在 phone 上关闭应用程序时(至少在我正在测试的 iPhone 12 上),然后通过在 phone,数据依然存在。

现在,如果我从 VS 重新启动应用程序,数据仍然存在。好

但是,当我对应用程序进行更改时,我发现我需要在 phone 上删除该应用程序,以便 VS 安装新应用程序。这很烦人,但我已经习惯了在 phone 上删除应用程序,然后再在 VS 中再次启动它。在这种情况下,数据不会持久存在。删除 phone 上的应用程序也会删除其数据。这一切都非常有道理,但当我第一次开始使用 sqlite 测试我的应用程序时却感到困惑。