相关疑难解决方法(0)

如何在Android中播放铃声/闹钟声音

我一直在寻找如何在Android中播放铃声/闹钟声音.

我按一个按钮,我想播放铃声/闹铃声.我找不到一个简单,直接的样本.是的,我已经查看了闹钟源代码......但它并不简单,我无法编译它.

我无法做到这一点:

Uri alert = RingtoneManager.getDefaultUri(RingtoneManager.TYPE_ALARM); 
mMediaPlayer = new MediaPlayer();
mMediaPlayer.setDataSource(this, alert);
final AudioManager audioManager = (AudioManager)getSystemService(Context.AUDIO_SERVICE);

if (audioManager.getStreamVolume(AudioManager.STREAM_ALARM) != 0) {
    player.setAudioStreamType(AudioManager.STREAM_ALARM);
    player.setLooping(true);
    player.prepare();
    player.start();
}
Run Code Online (Sandbox Code Playgroud)

我收到此错误:

04-11 17:15:27.638: ERROR/MediaPlayerService(30): Couldn't open fd for
content://settings/system/ringtone
Run Code Online (Sandbox Code Playgroud)

所以..如果有人知道如何播放默认铃声/闹钟,请告诉我.

我不想上传任何文件.只需播放默认铃声.

android android-emulator

113
推荐指数
9
解决办法
20万
查看次数

如何访问Android的默认哔声?

我想让一个按钮发出哔哔声,表示它已被按下.我想知道如何使用默认的android beep声音(比如当你调整铃声音量时),而不是导入我自己的mp3音乐文件或使用ToneGenerator?

java android beep

54
推荐指数
3
解决办法
6万
查看次数

仅播放通知默认声音(Android)

如何才能播放通知声音(不触发状态栏通知)?我想要通知默认声音,并将其作为通知声音播放.是否可以使用MediaPlayer实现它?

audio notifications android

16
推荐指数
2
解决办法
2万
查看次数

如何制作纯声音通知?

似乎还有其他几个与此主题相关的问题,但我发现的每个问题都有一个解决方案,该解决方案要么不使用通知,要么不适用于最新的 Android 版本。我想使用通知的原因是确保声音的音量与用户的通知音量相对应。

问:如何播放默认通知声音,不向用户显示任何内容,并响应通知音量级别?

一种曾经有效的解决方案是构建一个通知,但保留图标、标题和内容。这适用于较旧的 Android 版本(日志中出现错误E/NotificationService: WARNING: In a future release this will crash the app:),但不再是一个选项。

其他解决方案使用MediaPlayerRingTone,但这些解决方案具有不同用户音量控制的缺点,这意味着声音级别与显示的通知的声音级别不匹配。换句话说,如果用户将其媒体和铃声音量设置得非常低,则可能听不到这些方法。

一些类似的问题不能解决这个问题:

仅播放通知默认声音 (Android)

Android 通知仅播放声音

Android Marshmallow 只能发出声音通知?

如何播放 Android 通知声音

这会播放正确的声音,但不是以通知音量播放:

Uri uriSound = RingtoneManager.getDefaultUri(RingtoneManager.TYPE_NOTIFICATION);
try {
    RingtoneManager.getRingtone(getApplicationContext(), uriSound).play();
} catch (Exception e) {
    e.printStackTrace();
}
Run Code Online (Sandbox Code Playgroud)

这是一个纯声音通知,但仅在较旧的 Android 版本上有效(与文档相反):

Notification notification = new NotificationCompat.Builder(this, "channel_id")
    .setDefaults(NotificationCompat.DEFAULT_SOUND)
    .build();
Run Code Online (Sandbox Code Playgroud)

谷歌的 Android 消息应用程序就是我所希望的一个例子。当应用程序打开对话线程并收到新消息时,会播放通知声音,并且声音会正确响应通知音量级别。

notifications android android-notifications

5
推荐指数
0
解决办法
1426
查看次数

设置通知声音

如何为我的Android应用程序设置通知声音.在我的申请中,通知将在30秒后显示.我想为此警报提供选项,例如静音模式,振动模式以及从设备中选择可用音调的选项.我正在使用首选项屏幕来显示设置菜单.我想设置特定的通知环类型应用程序.有没有办法建立这个..

audio android ringtone sharedpreferences

4
推荐指数
1
解决办法
2万
查看次数

android.media.Ringtone.play() 在播放 28 次后停止工作

我有一个开放数小时的应用程序,并使用附加了前台通知的后台服务。每隔一段时间播放一次声音使用:

try {
    Ringtone r = RingtoneManager.getRingtone(context, uri);
    r.play();
} catch (Exception e) {
    e.printStackTrace();
}
Run Code Online (Sandbox Code Playgroud)

声音正在工作,但过了一会儿,声音不再播放了。
没有错误,没有警告,没有崩溃。就是没有声音。

我的用户也在抱怨,所以它看起来不像是特定于设备的问题。

Android Docs没有提及任何关于此的内容。有谁知道这是为什么?

android ringtone ringtonemanager

2
推荐指数
1
解决办法
1586
查看次数