【问题标题】:How to get URI current/default ringtone for incoming SMS?如何获取传入短信的 URI 当前/默认铃声?
【发布时间】:2023-04-09 18:33:01
【问题描述】:

我正在编写旨在替换标准/库存信使的应用程序。所以我需要为传入消息定义默认铃声。我的意思是收到短信通知铃声。

有谁知道怎么获得?

【问题讨论】:

标签: android notifications sms ringtone


【解决方案1】:

要检索默认铃声的Ringtone 对象,请使用RingtoneManager

Ringtone ringtone = RingtoneManager.getRingtone(context, Settings.System.DEFAULT_RINGTONE_URI);

如果用户已将默认铃声更改为第 3 方消息应用程序中提供的铃声,AFAIK 除非第 3 方应用程序通过 ContentProvider 公开其铃声,否则您将无法访问新铃声。

【讨论】:

    【解决方案2】:

    对于默认通知声音:

    String defaultPath = Settings.System.DEFAULT_NOTIFICATION_URI.getPath(); 
    

    【讨论】:

      【解决方案3】:

      如果您使用的是Notification.BuilderNotificationCompact.Builder 类,则在构建器上调用setSound(Settings.System.DEFAULT_NOTIFICATION_URI) 应该可以解决问题。

      这将播放系统显示您的通知时用户选择的默认通知音。

      【讨论】:

        【解决方案4】:

        帮助我的是 RingtoneManager.getDefaultUri(RingtoneManager.TYPE_NOTIFICATION).

        【讨论】:

          猜你喜欢
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 2014-04-25
          • 1970-01-01
          • 1970-01-01
          相关资源
          最近更新 更多