如何从特定的应用程序通知频道获取以下详细信息
我尝试使用以下代码,但是它返回系统默认的频道详细信息
Scaffold(
floatingActionButton: FloatingActionButton(
heroTag: "somethingUnique",
onPressed: () {},
child: Icon(Icons.add,),
),
body: Container(),
)
O / P:-内容:// settings / system / notification_sound
答案 0 :(得分:0)
经过多次搜索,我发现可以通过以下方式获取所有详细信息。
下面的链接显示了如何以编程方式打开应用程序通知频道设置。
这可能会帮助某人。
以下代码将返回您的所有申请渠道
public static List<NotificationChannel> getNotificationChannels(Context context) {
if (isNotificationChannelSupported(context)) {
NotificationManager notificationManager =
(NotificationManager) context.getSystemService(Context.NOTIFICATION_SERVICE);
if (notificationManager == null) {
Log.e("", "Notification manager is null");
return null;
}
return notificationManager.getNotificationChannels();
}
return null;
}
public static boolean isNotificationChannelSupported(Context context) {
return Build.VERSION.SDK_INT >= 26 && getTargetSdkVersion(context) >= 26;
}
private static int getTargetSdkVersion(Context context) {
int targetSdk = -1;
if (context != null) {
targetSdk = context.getApplicationInfo().targetSdkVersion;
}
return targetSdk;
}
下面的一行将以与获取姓名,ID等相同的方式返回声音
Uri
。get(2)
是您要引用的渠道,您也可以使用0,1来获取详细信息
Uri soundUri= getNotificationChannels(this).get(2).getSound()