Push Notification
FirebaseIDService.java
package com.example.hp.loginpageanimation.chat; import android.content.SharedPreferences; import android.util.Log; import com.google.firebase.iid.FirebaseInstanceId; import com.google.firebase.iid.FirebaseInstanceIdService; public class FirebaseIDService extends FirebaseInstanceIdService { private static final String TAG = "FirebaseIDService"; private final String TOKEN="token"; SharedPreferences spf; String refreshedToken; @Override public void onTokenRefresh() { // Get updated InstanceID token. // Toast.makeText(this,"Token:::::",Toast.LENGTH_LONG).show(); refreshedToken= FirebaseInstanceId.getInstance().getToken(); Log.d(TAG, "Refreshed token: " + refreshedToken); sendRegistrationToServer(refreshedToken); } private void sendRegistrationToServer(String token) { } }
MyFirebaseMessagingService.java
package com.example.hp.loginpageanimation.chat; import android.app.NotificationManager; import android.app.PendingIntent; import android.content.Context; import android.content.Intent; import android.content.SharedPreferences; import android.media.RingtoneManager; import android.net.Uri; import android.support.v4.app.NotificationCompat; import android.support.v4.content.LocalBroadcastManager; import android.util.Log; import com.example.hp.loginpageanimation.R; import com.example.hp.loginpageanimation.preference.LoginPreference; import com.google.firebase.messaging.FirebaseMessagingService; import com.google.firebase.messaging.RemoteMessage; public class MyFirebaseMessagingService extends FirebaseMessagingService { private static final String TAG = "FCM Service"; public static int FireMsgReqCode = 1410; private LoginPreference session; String user_nm,request_notification,success; private final String success_request="success_request"; public SharedPreferences spf; private Context contex; SharedPreferences.Editor speEditor; @Override public void onMessageReceived(RemoteMessage remoteMessage) { Log.d(TAG, "From: " + remoteMessage.getFrom()); Log.d(TAG, "Notification Message Body: " + remoteMessage.getNotification().getBody()); String message = remoteMessage.getNotification().getBody(); String title=remoteMessage.getNotification().getTitle(); String id=remoteMessage.getData().get("id"); success=remoteMessage.getData().get("success"); Log.d(TAG, "susccess: " + success); if(message!=null) { sendNotification(message,title,id,success); } } private void sendNotification(String messagebody,String unm,String uid,String flag) { Intent intent = new Intent(this, Request.class); intent.putExtra("user_nm",unm); intent.putExtra("id",uid); intent.addFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP); PendingIntent pendingIntent = PendingIntent.getActivity(this, FireMsgReqCode, intent, PendingIntent.FLAG_ONE_SHOT); Uri defaultSoundUri = RingtoneManager.getDefaultUri(RingtoneManager.TYPE_NOTIFICATION); NotificationManager notificationManager = (NotificationManager) getSystemService(Context.NOTIFICATION_SERVICE); NotificationCompat.Builder notificationBuilder = new NotificationCompat.Builder(this) .setSmallIcon(R.mipmap.ic_launcher) .setContentTitle(unm) .setContentText(messagebody) .setAutoCancel(true) .setSound(defaultSoundUri) .setContentIntent(pendingIntent); notificationManager.notify(0, notificationBuilder.build()); } }
Androidmainfest.xml
<service android:name=".chat.FirebaseIDService"> <intent-filter> <action android:name="com.google.firebase.INSTANCE_ID_EVENT" /> </intent-filter> </service> <service android:name=".chat.MyFirebaseMessagingService"> <intent-filter> <action android:name="com.google.firebase.MESSAGING_EVENT" /> </intent-filter> </service>
No comments:
Post a Comment