在基于 Xamarin.Forms 的应用程序中保存配置数据的最佳方式?

The best way to save Configuration data in Xamarin.Forms based app?

我现在正在开发一个基于 Xamarin.Forms 的应用程序,对此几乎没有疑问。有没有最好的方法让我只保存一些配置数据?因为我正在像这样使用基于 MVVM 的应用程序

private bool _isActive;
public bool IsActive
{
   get { return _isActive; }
   set
   {
      _isActive = value;
      RaisePropertyChanged(nameof(IsActive))
   }
}

我想在其他加载我的应用程序时保存 "IsActive" 值。
那么我有最好的方法吗?

Xamarin Forms Application class 有一个内置的跨平台方式来保存这样的设置数据,这可能是最简单的方式,除非您需要更多。看看 Application.PropertiesApplication.SavePropertiesAsync

我目前建议不要使用 Xamarin Forms 的 Application.Properties 功能,因为它不是特别可靠也不是很有弹性。相反,我建议使用跨平台设置插件(在 NuGet 上:https://www.nuget.org/packages/Xam.Plugins.Settings/ and source code / docs: https://github.com/jamesmontemagno/Xamarin.Plugins/tree/master/Settings),它提供了与 API 一样简单的功能,但没有 Application.Properties 功能的问题。

设置插件还有一些额外的好处,例如与本机应用程序设置集成(因此您可以在 iOS 设置应用程序中显示相同的值)以及同步 API (您不需要执行任何异步调用来保存或读取数据值)。