我有几个铃声,随APK文件一起分发,并按以下方式访问
Ringtone r = RingtoneManager.getRingtone(mContext, uri);
if (r != null) {
r.setStreamType(AudioManager.STREAM_NOTIFICATION);
r.play();
}
在大多数情况下,这可以按预期工作,但在某些设备系统中播放不应该播放的错误铃声。经过简短的调查后,我发现RingtoneManager.getRingtone方法的文档说明了
If the given URI cannot be opened for any reason, this method will attempt to fallback on another sound. If it cannot find any, it will return null.
这意味着我无法确定返回的铃声是我要求的铃声。所以我的问题是我怎么能至少验证getRingtone方法是否已经返回另一个(默认)铃声,这样我至少可以不播放它?
提前致谢。