【问题标题】:alarm does not ring in android from device storage?闹钟不会从设备存储中在 android 中响起?
【发布时间】:2020-02-11 05:39:41
【问题描述】:

我正在开发一个电池警报应用程序,该应用程序从我使用ListPreference 用于从用户设备中选择铃声的设备存储中选择铃声。我在 Lenovo TAB 7 上测试了该应用程序。我只从制造商那里得到铃声。电池充满时警报响起。

再次出于测试目的,我在小米 Redmi 5A 中尝试了应用程序。当我选择闹钟铃声时,我得到了手机上所有可用的铃声或音乐。但它没有在应该响起的时候响起。两部手机都具有相同版本的相同应用程序,完全没有变化。

我试过以下:

  • 我检查了铃声路径是否已选择并存储到首选项中。

  • 当我检查偏好时,我得到了从联想选择的铃声路径以 contet://......

  • 当从小米红米 5A 中选择的铃声路径从 storage://.....

我认为由于这些原因我遇到了这个问题。我试图找到一些解决方案但一无所获。我正在用MediaPlayer 播放音乐或铃声。

提前致谢

【问题讨论】:

  • 你应该尝试从 Uri 获取绝对路径。
  • @Chandan kushwaha 我该怎么做?

标签: android media-player ringtone ringtonemanager


【解决方案1】:

所以我终于得到了答案。

我只是在 MediaPlayer 对象上使用了setResource 方法,以便它可以播放手机中的音乐。

但它不适用于小米手机。所以我尝试在构造函数中传递路径,就像我们通常对原始资源所做的那样。瞧,它运作良好。所以只需在构造函数中传递 uri 路径,它将适用于包括 android Q(或 10)在内的所有设备

【讨论】:

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