【发布时间】:2015-03-30 10:35:51
【问题描述】:
如何在收到 Android 推送通知时播放自定义声音?
在应用程序中,我可以使用媒体播放器进行控制。在 APP 之外我找不到音频文件的正确路径。我已经“/android_assets/www/”尝试了“www/”,但是当您在应用程序外收到推送通知时,总是有默认声音。
【问题讨论】:
标签: android cordova audio push-notification
如何在收到 Android 推送通知时播放自定义声音?
在应用程序中,我可以使用媒体播放器进行控制。在 APP 之外我找不到音频文件的正确路径。我已经“/android_assets/www/”尝试了“www/”,但是当您在应用程序外收到推送通知时,总是有默认声音。
【问题讨论】:
标签: android cordova audio push-notification
首先,您需要在 res 文件夹下的 raw 文件夹中添加新的声音文件。
由于是cordova应用,你使用的是cordova push插件。有一个包叫com.plugin.gcm。在那个包里打开GCMIntentService.java。在
public void createNotification(Context context, Bundle extras)
方法,这个方法的末尾应该有一行
mNotificationManager.notify((String) appName, NOTIFICATION_ID, mBuilder.build());
只需用以下代码替换该行
Notification notification = mBuilder.build();
notification.sound = Uri.parse("android.resource://" + context.getPackageName() + "/your_sound_file_name.mp3");
notification.defaults |= Notification.DEFAULT_VIBRATE;
mNotificationManager.notify((String) appName, NOTIFICATION_ID, notification);
【讨论】: