gpt4 book ai didi

sharedpreferences - Xamarin Forms Sharedpreferences 交叉

转载 作者:行者123 更新时间:2023-12-04 00:38:01 28 4
gpt4 key购买 nike

我想知道以跨平台方式操作应用程序设置的最佳解决方案是什么。

在 iOS 中,我们可以在设置屏幕中更改应用程序外部的设置,但在 windows phone 和 android 中我们没有。

所以,我的想法是在应用程序中创建一个普通页面/屏幕,显示我的所有应用程序设置,并具有一个带有 Save() 和 Get() 方法的接口(interface),我可以使用 DependencyServices 为每个设备实现特定的方法。

这是正确的方法吗?

最佳答案

  • Application 子类有一个静态的 Properties 字典,可用于存储数据。可以使用 Application.Current.Properties 从 Xamarin.Forms 代码中的任何位置访问它。


  • Application.Current.Properties ["id"] = someClass.ID;

    if (Application.Current.Properties.ContainsKey("id"))
    {
    var id = Application.Current.Properties ["id"] as int;
    // do something with id
    }

    属性字典会自动保存到设备中。当应用程序从后台返回时,甚至在重新启动后,添加到字典中的数据都将可用。 Xamarin.Forms 1.4 在 Application 类上引入了一个附加方法 - SavePropertiesAsync() - 可以调用它来主动保留 Properties 字典。这是为了让您在重要更新后保存属性,而不是冒着由于崩溃或被操作系统杀死而无法序列化它们的风险。

    https://developer.xamarin.com/guides/cross-platform/xamarin-forms/working-with/app-lifecycle/
  • 使用 native 设置管理的 Xamarin.Forms 插件。
  • Android:共享偏好
  • iOS:NSUserDefaults
  • Windows Phone:独立存储设置
  • Windows 应用商店/Windows Phone RT:ApplicationDataContainer

  • https://github.com/jamesmontemagno/Xamarin.Plugins/tree/master/Settings

    关于sharedpreferences - Xamarin Forms Sharedpreferences 交叉,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32269002/

    28 4 0
    Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
    广告合作:1813099741@qq.com 6ren.com