如何处理 ActionAppNotificationSettings?
How to handle the ActionAppNotificationSettings?
我有一个 xamarin 应用程序,不会打开特定的设置页面。
设置 -> 应用 -> 特殊应用访问 -> 通知访问
我发现了意图,对于正常设置,它看起来像这样:
var intent = new Intent(Android.Provider.Settings.ActionNotificationListenerSettings);
// ActionAppNotificationSettings <-- does not work
// ActionManageOverlayPermission <-- does not work
// ActionNotificationListenerSettings <-- does not work
// ActionApplicationDetailsSettings <-- works
intent.AddFlags(ActivityFlags.NewTask);
var uri = Android.Net.Uri.FromParts("package", Application.Context.PackageName, null);
intent.SetData(uri);
Application.Context.StartActivity(intent);
我只能用ActionApplicationDetailsSettings打开普通的设置页面
但我猜想 ActionNotificationListenerSettings 应该打开我想要的位置(我不知道它是否确实打开了这个:设置 -> 应用 -> 特殊应用访问 -> 通知访问)
但是使用 ActionNotificationListenerSettings,应用会抛出此错误:
No Activity found to handle Intent { act=android.settings.ACTION_NOTIFICATION_LISTENER_SETTINGS
这里有什么问题?
您应该使用 ActionAppNotificationSettings
而不是 ActionNotificationListenerSettings
。这是代码示例:
public void goToSetting()
{
//startActivity(new Intent("android.settings.ACTION_NOTIFICATION_LISTENER_SETTINGS"));
var intent = new Intent(Android.Provider.Settings.ActionAppNotificationSettings);
intent.AddFlags(ActivityFlags.NewTask);
intent.PutExtra(Android.Provider.Settings.ExtraAppPackage, Application.Context.PackageName);
intent.PutExtra(Android.Provider.Settings.ExtraChannelId, Application.Context.ApplicationInfo.Uid);
StartActivity(intent);
}
我有一个 xamarin 应用程序,不会打开特定的设置页面。
设置 -> 应用 -> 特殊应用访问 -> 通知访问
我发现了意图,对于正常设置,它看起来像这样:
var intent = new Intent(Android.Provider.Settings.ActionNotificationListenerSettings);
// ActionAppNotificationSettings <-- does not work
// ActionManageOverlayPermission <-- does not work
// ActionNotificationListenerSettings <-- does not work
// ActionApplicationDetailsSettings <-- works
intent.AddFlags(ActivityFlags.NewTask);
var uri = Android.Net.Uri.FromParts("package", Application.Context.PackageName, null);
intent.SetData(uri);
Application.Context.StartActivity(intent);
我只能用ActionApplicationDetailsSettings打开普通的设置页面 但我猜想 ActionNotificationListenerSettings 应该打开我想要的位置(我不知道它是否确实打开了这个:设置 -> 应用 -> 特殊应用访问 -> 通知访问)
但是使用 ActionNotificationListenerSettings,应用会抛出此错误:
No Activity found to handle Intent { act=android.settings.ACTION_NOTIFICATION_LISTENER_SETTINGS
这里有什么问题?
您应该使用 ActionAppNotificationSettings
而不是 ActionNotificationListenerSettings
。这是代码示例:
public void goToSetting()
{
//startActivity(new Intent("android.settings.ACTION_NOTIFICATION_LISTENER_SETTINGS"));
var intent = new Intent(Android.Provider.Settings.ActionAppNotificationSettings);
intent.AddFlags(ActivityFlags.NewTask);
intent.PutExtra(Android.Provider.Settings.ExtraAppPackage, Application.Context.PackageName);
intent.PutExtra(Android.Provider.Settings.ExtraChannelId, Application.Context.ApplicationInfo.Uid);
StartActivity(intent);
}