<分区>
在 Android 应用程序中,我有一个按钮,我希望它具有打开应用程序通知设置的功能(在 Android 设置中)。
我可以用这个打开 Android 设置
startActivityForResult(new Intent(android.provider.Settings.ACTION_SETTINGS), 0);
但我想直接在我的应用通知设置上打开
备选
如果有办法以编程方式打开和关闭“阻止通知”,那也可以。
<分区>
在 Android 应用程序中,我有一个按钮,我希望它具有打开应用程序通知设置的功能(在 Android 设置中)。
我可以用这个打开 Android 设置
startActivityForResult(new Intent(android.provider.Settings.ACTION_SETTINGS), 0);
但我想直接在我的应用通知设置上打开
备选
如果有办法以编程方式打开和关闭“阻止通知”,那也可以。
最佳答案
我知道这是一个老问题,但对于那些在未来发现它的人:从 Oreo(API 级别 26)开始,现在有一个官方深层链接 Intent
用于特定应用程序的通知设置。
Intent settingsIntent = new Intent(Settings.ACTION_APP_NOTIFICATION_SETTINGS)
.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK)
.putExtra(Settings.EXTRA_APP_PACKAGE, getPackageName())
.putExtra(Settings.EXTRA_CHANNEL_ID, MY_CHANNEL_ID);
startActivity(settingsIntent);
EXTRA_CHANNEL_ID
参数是可选的,并且根据 the docs , 将“突出显示该 channel ”。 FWIW,从 Android 8.1 开始,我看不出它有什么不同。如果您要添加此参数,请确保您的Action
是ACTION_CHANNEL_NOTIFICATION_SETTINGS
。
关于android - 以编程方式访问应用程序通知设置,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38124552/