Событие клика не работает при нажатии на уведомление - PullRequest
0 голосов
/ 08 сентября 2018

Ниже приведен код службы сообщений.

public class FireBaseMessagingService extends FirebaseMessagingService  {
private static final String TAG = "MyFirebaseMsgService";
private static int count = 0;
@Override
public void onMessageReceived(RemoteMessage remoteMessage) {
    //Displaying data in log
    //It is optional
    Log.d(TAG, "Notification Message TITLE: " + 
 remoteMessage.getNotification().getTitle());
    Log.d(TAG, "Notification Message BODY: " + 
 remoteMessage.getNotification().getBody());
    Log.d(TAG, "Notification Message DATA: " + 
remoteMessage.getData().toString());


    sendNotification(remoteMessage.getNotification().getTitle(),
            remoteMessage.getNotification().getBody(), 
 remoteMessage.getData());

}

//This method is only generating push notification
private void sendNotification(String messageTitle, String messageBody, 
 Map<String, String> row) {
    // PendingIntent contentIntent = null;
    PendingIntent contentIntent =
            PendingIntent.getActivity(this, 0, new Intent(this, 
  LoginActivity.class), 0);

    Uri defaultSoundUri = 
   RingtoneManager.getDefaultUri(RingtoneManager.TYPE_NOTIFICATION);
    NotificationCompat.Builder notificationBuilder = new 
 NotificationCompat.Builder(this)
            .setLargeIcon(BitmapFactory.decodeResource(getResources(), 
  R.drawable.ic_launcher_foreground))
            .setSmallIcon(R.drawable.ic_launcher_foreground)
            .setContentTitle(messageTitle)
            .setContentText(messageBody)
            .setAutoCancel(true)
            .setSound(defaultSoundUri)
            .setContentIntent(contentIntent);

    NotificationManager notificationManager =
            (NotificationManager) 
  getSystemService(Context.NOTIFICATION_SERVICE);

    notificationManager.notify(count, notificationBuilder.build());

    count++;

}
}

Я новичок в программировании, поэтому, пожалуйста, игнорируйте ошибки. Также в приведенном выше коде он не уведомляет, когда приложение находится на переднем плане. Так что естьдва запроса, один из которых состоит в том, что при нажатии на уведомление оно не вызывает LoginActivity, а другое - приложение не уведомляет, когда находится на переднем плане.

Ответы [ 2 ]

0 голосов
/ 12 сентября 2018

какой тип уведомления вы используете? внутри вашего уведомления вы просто добавляете метод действия click и отправляете его

        <intent-filter>

            <action android:name="given click ation name" />

            <category android:name="android.intent.category.DEFAULT" />
        </intent-filter>
    </activity>' 

это лучший способ подойти к вашему классу

0 голосов
/ 12 сентября 2018

Я думаю, что вам не хватает строки ниже **

messagesManager.contentIntent = contentIntent;

**

    NotificationManager notificationManager =
            (NotificationManager) 
  getSystemService(Context.NOTIFICATION_SERVICE);
        notificationManager.contentIntent = contentIntent;
        notificationManager.notify(count, notificationBuilder.build());
...