Open App-Settings in Xamarin Forms

.NET standard application

using System; 

namespace MyApp.Helpers 
{ 
  public interface IAppSettingsHelper 
  { 
    void OpenAppSettings(); 
  } 
}


Android App

using System;
using Android.Content;
using MyApp.Droid;
using MyApp.Helpers;
using Xamarin.Forms;
using Application = Android.App.Application;

[assembly: Dependency(typeof(AppSettingsInterface))]
namespace MyApp.Droid
{
  public class AppSettingsInterface : IAppSettingsHelper
  {
    public void OpenAppSettings()
    {
      var intent = new Intent(Android.Provider.Settings.ActionApplicationDetailsSettings);
      intent.AddFlags(ActivityFlags.NewTask);
      string package_name = "my.android.package.name";
      var uri = Android.Net.Uri.FromParts("package", package_name, null);
      intent.SetData(uri);
      Application.Context.StartActivity(intent);
    }
  }
}


iOS App

using System;
using MyApp.Helpers;
using MyApp.iOS;
using Foundation;
using UIKit;
using Xamarin.Forms;

[assembly: Dependency(typeof(AppSettingsInterface))]
namespace MyApp.iOS
{
  public class AppSettingsInterface : IAppSettingsHelper
  {
    public void OpenAppSettings()
    {
      var url = new NSUrl($"app-settings:");
      UIApplication.SharedApplication.OpenUrl(url);
    }
  }
}