首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >RingtoneManager返回空铃声

RingtoneManager返回空铃声
EN

Stack Overflow用户
提问于 2011-03-24 06:54:52
回答 2查看 4.7K关注 0票数 9

我使用的是RingtoneManager,显然在某些手机上它总是返回null。我知道如果声音是静音或者找不到音调,它会返回null。如果声音打开并且有音调,为什么会返回null?代码可以在我的nexus上运行...

下面是我正在使用的:

代码语言:javascript
复制
Ringtone ringtone;
ringtone = RingtoneManager.getRingtone(context, RingtoneManager.getDefaultUri(RingtoneManager.TYPE_NOTIFICATION));
if(ringtone == null)
{
    Log.d("Debug", "ringtone is null");
}
else
{
    ringtone.play();
}

我启用了播放铃声的所有权限(它在我的手机上工作),甚至启用了SD卡权限,以防铃声在SD卡上。有什么想法吗?

EN

回答 2

Stack Overflow用户

发布于 2013-01-13 18:31:21

我只是陷入了问题所在。如果用户有"Silent“样的通知发声功能:

代码语言:javascript
复制
RingtoneManager.getRingtone(context, RingtoneManager.getDefaultUri(RingtoneManager.TYPE_NOTIFICATION))

返回null。这就解释了为什么只有一些用户发现了这个问题。

票数 9
EN

Stack Overflow用户

发布于 2014-01-12 23:43:41

如果您将存储在外部存储器上的声音复制到您的手机上,RingtoneManager将无法打开它,除非您的应用程序具有访问外部存储器的权限。

将缺少的权限添加到清单文件:

<uses-permission android:name="android.permission.READ_EXTERNAL_STORAGE" />

我花了一些时间才弄明白这一点,而没有得到一些用户在他们的设备上的风俗铃声的正确标题

票数 8
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/5412691

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档