2016-09-26 3 views
0

내 안드로이드 응용 프로그램에 FCM 푸시 알림을 통합했습니다. 그리고 알림을 보내는 FCM 콘솔을 사용하고 있습니다. public void onMessageReceived(RemoteMessage remoteMessage 메서드에서 데이터를 읽을 수 있기 때문에 앱이 포 그라운드에있는 경우 맞춤 알림을 표시하고 있지만 문제는 앱에 onMessageReceived() 메서드의 데이터가 표시되지 않습니다. 배경에 있습니다.FCM을 사용하여 Android에서 푸시 알림 맞춤 설정

앱이 백그라운드 일 때 알림을 사용자 정의 할 수있는 방법이 있는지 알려주세요. 그것은 알려진 문제의 사전

+0

을 확인해야합니까? 또한 귀하의 onMessageReceive() 게시 –

+0

사전에 매개 변수를 줄 것이다 메시지 제목을 줄 것입니다 –

+0

읽기 http://stackoverflow.com/questions/35257410/how-to-customize-notification-display-and-tone-when- using-gcmreceiver-and-gcmlis –

답변

1

 if (remoteMessage.getData().size() > 0) { 
     Log.i("Message data payload: ", String.valueOf(remoteMessage.getData().toString())); 

     notification_type = remoteMessage.getData().get("type"); 
     switch (notification_type){ 
      case "store": 
       store_id = String.valueOf(remoteMessage.getData().get("store_id")); 
       image_url = String.valueOf(remoteMessage.getData().get("url")); 
       Log.i("prrr",store_id+"XCx"+String.valueOf(remoteMessage.getData().get("store_id"))); 
//     message = String.valueOf(remoteMessage.getData().get("message")); 
        break; 
       case "product": 
        product_id = String.valueOf(remoteMessage.getData().get("product_id")); 
        Log.i("prrr",product_id+"XCx"+String.valueOf(remoteMessage.getData().get("product_id"))); 
        store_id = String.valueOf(remoteMessage.getData().get("store_id")); 
        image_url = String.valueOf(remoteMessage.getData().get("url")); 
//     message = String.valueOf(remoteMessage.getData().get("message")); 
        break; 
       case "category": 
        category_id = String.valueOf(remoteMessage.getData().get("category_id")); 
        store_id = String.valueOf(remoteMessage.getData().get("store_id")); 
        Log.i("prrr",store_id+"XCx"+String.valueOf(remoteMessage.getData().get("store_id"))); 
        Log.i("prrr",category_id+"XCx"+String.valueOf(remoteMessage.getData().get("category_id"))); 
        image_url = String.valueOf(remoteMessage.getData().get("url")); 
//     message = String.valueOf(remoteMessage.getData().get("message")); 
        category_name = String.valueOf(remoteMessage.getData().get("category_name")); 
        break; 

     } 


    } 

    // Check if message contains a notification payload. 
    if (remoteMessage.getNotification() != null) { 
     Log.i("Message No: " ,"h"+remoteMessage.getNotification().getBody()); 
     title = remoteMessage.getNotification().getBody(); 
    } 

    sendNotification(String.valueOf(remoteMessage.getData().get("url"))); 

감사합니다. 서버를 통해, 데이터 메시지로, 콘솔을 통하지 않고 알림을 보내야합니다.

이 가능하지 경우 FCM 컨텐츠를 유발하는 방법, 어떤 이유로, 당신은 this tutorial.

+0

나는 그 사실을 안다. 안드로이드 시스템은 기본 알림을 보여줄 것이다. 사용자 정의 할 수있는 방법이있다. 아니면 어떻게 데이터를 클릭하지 않고 탐지 할 수 있는가? –

+0

앱 서버 생성 후 앱이 종료 될 때 알림을 표시하는 방법 (bg & fg 제외). GCM 용 브로드 캐스트 리시버를 사용합니다. –