在Lollipop及以下版本中,您可以通过在构建时省略图标,内容标题和内容文本轻松发送声音通知,如下所示:
NotificationCompat.Builder builder = new NotificationCompat.Builder(getApplicationContext());
builder.setSound(Uri.parse(ringtone));
notificationManager.notify(9998, builder.build());
在Marshmallow,我被迫至少包含一个图标,或者我得到一个没有效的小图标'例外。我想使用通知系统,但并不总是希望在通知栏中显示通知。使用Marshmallow是否可行,或者我应该更改为使用媒体播放器播放我的通知声音,即使有时我或用户可能想要显示通知?
答案 0 :(得分:0)
我在某个地方读到文档说图标是必需的,甚至认为它在Lollipop及以下省略时没有抛出异常。在研究使用MediaPlayer之后,我终于决定使用RintoneManager来播放它。我正在使用通知声音,所以也可以节省一些打字并快速执行
try {
RingtoneManager.getRingtone(getApplicationContext(), Uri.parse(ringtone)).play();
} catch (Exception e) {
e.printStackTrace();
}
触发声音,我会在需要实际通知时保存通知。我已经计划使用if,具体取决于通知是否应出现在通知栏中。