gpt4 book ai didi

android - 通过 URI 播放通知音频

转载 作者:塔克拉玛干 更新时间:2023-11-02 21:51:34 28 4
gpt4 key购买 nike

我有通知声音的 URI,比如 content://media/internal/audio/media/122,但是 SoundPool 不适用于 URI,它仅适用于文件路径的 apk 资源。

有没有办法从 URI 获取媒体文件路径?我尝试了 Uri.getPath(),它返回 /internal/audio/media/122,但这不是有效的文件路径,当然 SoundPool 不适用于此类补丁。

实际上,通知的真实路径是 /system/media/audio/notifications/allegro.ogg ,我看不出有什么办法可以从像 content://media 这样的 URI 获取它/internal/audio/media/122

或者我应该为此使用 MediaPlayer 吗?我测试过,它有效:

           MediaPlayer mp = MediaPlayer.create(this, "content://media/internal/audio/media/122");
mp.start();

我很困惑,因为 MediaPlayer 似乎太重了,不能只播放简短的通知声音,所以我更愿意使用 SoundPool

如果我对 MediaPlayer 的权重有误,请告诉我,并建议通过其 URI 播放通知声音的正确方法。

最佳答案

好吧,我找到了通过 URI 播放音频的最简单方法:

RingtoneManager.getRingtone(this, Uri.parse("content://media/internal/audio/media/122")).play();

我认为这是我所能达到的最好结果。

关于android - 通过 URI 播放通知音频,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12049561/

28 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com