我有一个闹钟应用程序,当闹钟响起时会播放声音(类似闹铃的连续音频)。不幸的是,在Lollipop版本中,声音并未完全播放,而是在几秒钟后就停止了。但是如果手机连接到电源,这种情况就不会发生,声音可以完全播放。该代码在之前的Android版本上运行良好。请问有人可以帮忙吗?以下是我的通知代码:
NotificationCompat.Builder mBuilder = new NotificationCompat.Builder(context)
.setAutoCancel(true)
.setPriority(Integer.MAX_VALUE)
.setContentTitle(someTitle)
.setWhen(now)
.setIcon(R.drawable.some_icon);
Notification notif = mBuilder.build();
if(Build.VERSION.SDK_INT >= 21) {
notif.sound = audioFileUri;
notif.category = Notification.CATEGORY_ALARM;
AudioAttributes.Builder attrs = new AudioAttributes.Builder();
attrs.setContentType(AudioAttributes.CONTENT_TYPE_SONIFICATION);
attrs.setUsage(useAlarm ? AudioAttributes.USAGE_ALARM : AudioAttributes.USAGE_NOTIFICATION_EVENT);
notif.audioAttributes = attrs.build();
} else {
mBuilder.setSound(audioFileUri, useAlarm ? AudioManager.STREAM_ALARM : AudioManager.STREAM_NOTIFICATION);
notif = mBuilder.build();
}
NotificationManager mNotificationManager = (NotificationManager) context.getSystemService(Context.NOTIFICATION_SERVICE);
mNotificationManager.notify(NOTIFICATION_ID, notif);