如何在跨平台Mono App(例如Xamarin Framework)中持久保存/缓存数据?

Rod*_*dja 6 persistence caching xamarin.ios key-value-store xamarin.android

我正在寻找一个很好的解决方案,用于在C#(Xamarin的MonoTouch和MonoDroid + WindowsPhone)开发的跨平台应用程序中存储和/或缓存数据.简单的键/值对就足够了.存储的数据将用作常规缓存和持久性,以便在从服务器获取新数据时在App启动时显示某些内容.

Akavache看起来非常像我想要的但是如何将它集成到我的项目中?它会选择正确的存储路径吗?周围有类似的图书馆吗?

Rod*_*dja 6

我没有尝试过Akavache jet,而是围绕Android和iOS上的首选API 实现了一个跨平台包装器:

var storage = SimpleStorage.EditGroup("group name of key/value store");
storage.Put("myKey", "some value");
var value = storage.Get("myKey");
Run Code Online (Sandbox Code Playgroud)

该项目托管在GitHub上,并作为免费的NuGet包分发.沿着字符串存储它还提供了异步/等待方法以及复杂对象的序列化/反序列化.