android - 警报不会从设备存储中响起 android?
问题描述
我正在开发一个电池警报应用程序,该应用程序从我用于ListPreference
从用户设备中选择铃声的设备存储中选择铃声。我在 Lenovo TAB 7 上测试了该应用程序。我只从制造商那里得到铃声。电池充满时警报响起。
再次出于测试目的,我尝试了在小米红米 5A 中的应用。当我选择闹钟铃声时,我得到了手机上所有可用的铃声或音乐。但它没有在应该响起的时候响起。两部手机都具有相同版本的相同应用程序,完全没有变化。
我试过以下:
我检查是否选择了铃声路径并将其存储到首选项中。
当我检查偏好时,我从联想选择的铃声路径以 contet://......
当从小米 Redmi 5A 中选择的铃声路径从 storage://.....
我认为由于这些原因我遇到了这个问题。我试图找到一些解决方案但一无所获。我正在播放音乐或铃声MediaPlayer
。
先感谢您
解决方案
所以最后我得到了答案。
我只是setResource
在 MediaPlayer 对象上使用了一个基本的方法,这样它就可以从手机播放音乐。
但它不适用于小米手机。所以我尝试在构造函数中传递路径,就像我们通常对原始资源所做的那样。瞧,它运作良好。所以只需在构造函数中传递 uri 路径,它将适用于包括 android Q(或 10)在内的所有设备
推荐阅读
- ruby-on-rails - 使用 Rails/AREL 从数据库中选择特定的 JSON 节点?
- python - python问题的移动平均线
- rust - 在rust中将变量类型作为函数参数传递?
- vb.net - Visual Basic 是否会非常缓慢地处理这样的嵌套循环,或者我的代码是否存在其他问题?
- ios - TextView 和 TextField 的单个扩展以添加工具栏
- angular - 我需要取消订阅 Ngrx Select
- .net - Npsql:使用 EF Core 在 jsonb 列上创建索引
- java - Let's Encrypt + Hitch: Android OkHttp java.security.cert.CertPathValidatorException: Response is unreliable: its valid interval is out-of-date
- flutter - 如何将 ColorTween 动画添加到 TabBar?
- html - 粘性第一行和第一列没有滚动溢出问题