我开发了一个唤醒应用程序。问题是,应用程序使用调用量和短信。而不是警报。
public void onReceive(Context context, Intent intent) {
Uri uri = RingtoneManager.getActualDefaultRingtoneUri(context,RingtoneManager.TYPE_ALARM);
Uri alert = RingtoneManager.getDefaultUri(RingtoneManager.TYPE_ALARM);
ringtone = RingtoneManager.getRingtone(context, alert);
ringtone.play();
答案 0 :(得分:1)
DavidH的回答有效但在API级别21中不推荐使用Ringtone.setStreamType。对于API级别21+,请使用:
ringtone.setAudioAttributes(new AudioAttributes.Builder().setUsage(AudioAttributes.USAGE_ALARM).build());
支持较旧的Android版本:
if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.LOLLIPOP) {
ringtone.setAudioAttributes(new AudioAttributes.Builder().setUsage(AudioAttributes.USAGE_ALARM).build());
} else {
ringtone.setStreamType(AudioManager.STREAM_ALARM);
}
答案 1 :(得分:0)
使用
ringtone.setStreamType(AudioManager.STREAM_ALARM);