2014-07-14 13 views
8

Tôi nhận được Thông báo đẩy GCM thành công. Bây giờ tôi muốn thêm tập tin âm thanh tùy chỉnh thay vì âm thanh mặc định. Tôi đã thử với Uri từAndroid GCM PushNotification - Thêm tệp âm thanh tùy chỉnh vào ứng dụng

file: ///res/raw/pop.mp3

trong

Notification.DEFAULT_SOUND;

nhưng không thành công. Hãy chia sẻ nếu bạn có giải pháp tốt hơn.

My GCMIntentService.java đang phương pháp dưới -

/** 
* Issues a notification to inform the user that server has sent a message. 
*/ 
private static void generateNotification(Context context, String message) { 

    System.out.println("Called generateNotification>>>>>>>>>>>>>"+message); 
    NotificationManager notificationManager = (NotificationManager) context 
      .getSystemService(Context.NOTIFICATION_SERVICE); 
    // Notification notification = new Notification(icon, message, when); 

    String title = context.getString(R.string.app_name); 

    NotificationCompat.Builder mBuilder = new NotificationCompat.Builder(
      context) 
      .setSmallIcon(R.drawable.app_icon) 
      .setContentTitle(title) 

      .setStyle(
        new NotificationCompat.BigTextStyle().bigText(message)) 
      .setContentText(message); 

    Intent notificationIntent = new Intent(context, 
      SplashActivity.class); 
    PendingIntent intent = PendingIntent.getActivity(context, 0, 
      notificationIntent, PendingIntent.FLAG_CANCEL_CURRENT); 

    mBuilder.setContentIntent(intent); 

    Notification notification = mBuilder.build(); 
    notification.flags |= Notification.FLAG_AUTO_CANCEL; 

    notification.defaults |= Notification.DEFAULT_SOUND; 
    notification.defaults |= Notification.DEFAULT_VIBRATE; 


    notificationManager.notify(0, notification); 



} 

Trả lời

15

Để thêm tùy chỉnh âm thanh thêm này

notification.sound = Uri.parse("android.resource://" + getPackageName() + "/" + R.raw.pop); 

tức Trong thay đổi mã của bạn

notification.defaults |= Notification.DEFAULT_SOUND; 
notification.defaults |= Notification.DEFAULT_VIBRATE; 

để

notification.sound = Uri.parse("android.resource://" + getPackageName() + "/" +R.raw.pop); 
notification.defaults |= Notification.DEFAULT_VIBRATE; 
Các vấn đề liên quan