点击通知后如何进行特定活动

时间:2017-02-27 07:02:05

标签: android-activity push-notification onclick next

我希望我的应用程序应该给我通知,并且在点击通知时应该打开另一个活动,如whatsapp通知
这是我的代码c任何人帮助?????

 public class MyFirebaseMessagingService extends FirebaseMessagingService {
        @Override
        public void onMessageReceived(RemoteMessage remoteMessage) {
            //    sendNotification(remoteMessage.getNotification().getBody());
            //Bundle bundle=new Bundle();
            //bundle.putString("msgBody",remoteMessage.getNotification().getBody());
            //intent use for start this activity after click on notification
            Intent intent = new Intent(getApplicationContext(),Secondactivity.class);
            String valu=remoteMessage.getNotification().getBody();
            intent.putExtra("notificationmessage",valu);
**strong text**            //here we are telling system after clicking you have to come on mainactivity
            intent.setFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP);
            //here we are giving rights to main activity.FLAG_ONE_SHOT useful to indicate this pending intent can use only once
            PendingIntent pendingintent=PendingIntent.getActivity(this,0,intent,PendingIntent.FLAG_ONE_SHOT);
            //notificationcompat useful for creating notification layout
            NotificationCompat.Builder notificationbuilder=new  NotificationCompat.Builder(this);
            notificationbuilder.setContentText(remoteMessage.getNotification().getBody());
            notificationbuilder.setContentTitle("FCM NOTIFICATION");
            notificationbuilder.setSmallIcon(R.mipmap.ic_launcher);
            notificationbuilder.setAutoCancel(true);
            notificationbuilder.setContentIntent(pendingintent);

            NotificationManager notificationManager= (NotificationManager) getSystemService(Context.NOTIFICATION_SERVICE);
            notificationManager.notify(0,notificationbuilder.build());

        }

1 个答案:

答案 0 :(得分:0)

您必须在消息内容中添加额外参数以识别类型。然后根据该类型值创建具有不同活动的通知管理器。

例如:

Imports System.Net

Public Class Form1

    Dim WithEvents wc As New WebClient

Private Sub Button1_Click(sender As Object, e As EventArgs) Handles Button1.Click
        wc.DownloadFileAsync(New Uri("http://cachefly.cachefly.net/100mb.test"), "100mb.test")
End Sub

Private Sub wc_DownloadFileCompleted(sender As Object, e As System.ComponentModel.AsyncCompletedEventArgs) Handles wc.DownloadFileCompleted
    ProgressBar1.Visible = False
    ProgressBar1.Value = 0
End Sub

Private Sub wc_DownloadProgressChanged(sender As Object, e As DownloadProgressChangedEventArgs) Handles wc.DownloadProgressChanged
    ProgressBar1.Visible = True
    ProgressBar1.Value = e.ProgressPercentage
End Sub

End Class