如何从Xamarin表单打开应用程序隐私设置

Pxa*_*aml 1 cross-platform xamarin.forms

尝试打开我的应用设置,以便用户可以看到我的应用所需的权限。用类似的例子找不到任何东西。*

if (item.Name == "Privacy preferences")
            {
                switch (Device.RuntimePlatform)
                {
                    case Device.iOS:
                        Device.OpenUri(
                          new Uri(FORGOT WHAT TO PUT IN HERE .. APP/SETTINGS?);
                        break;
                    case Device.Android:
                        Device.OpenUri(
                          new Uri();
                        break;
                }
Run Code Online (Sandbox Code Playgroud)

*

EvZ*_*EvZ 6

非常简单,您将必须创建平台特定的实现。

介面

public interface ISettingsHelper
{
    void OpenAppSettings();
}
Run Code Online (Sandbox Code Playgroud)

的iOS

public void OpenAppSettings()
{
    var url = new NSUrl($"app-settings:{app_bundle_id}");
    UIApplication.SharedApplication.OpenUrl(url);
}
Run Code Online (Sandbox Code Playgroud)

安卓系统

public void OpenAppSettings()
{
    var intent = new Intent(Android.Provider.Settings.ActionApplicationDetailsSettings);
    intent.AddFlags(ActivityFlags.NewTask);
    var uri = Android.Net.Uri.FromParts("package", package_name, null);
    intent.SetData(uri);
    Application.Context.StartActivity(intent);
}
Run Code Online (Sandbox Code Playgroud)

在Xamarin.Forms项目中,您可以简单地调用OpenAppSettings();

PS:请记住,如果您想在较旧的设备上使用此解决方案,则需要对其进行调整。