package com.tryouts.courierapplication.firebaseservices; import android.util.Log; import com.google.firebase.auth.FirebaseAuth; import com.google.firebase.auth.FirebaseUser; import com.google.firebase.database.FirebaseDatabase; import com.google.firebase.iid.FirebaseInstanceId; import com.google.firebase.iid.FirebaseInstanceIdService; public class FirebaseIDService extends FirebaseInstanceIdService { private static final String TAG = "FirebaseIDService"; @Override public void onTokenRefresh() { // Get updated InstanceID token. String refreshedToken = FirebaseInstanceId.getInstance().getToken(); Log.d(TAG, "Refreshed token: " + refreshedToken); // Implement this method to send any registration to your app's servers. sendRegistrationToServer(refreshedToken); } /** * Persist token to third-party servers. * * Modify this method to associate the user's FCM InstanceID token with any server-side account * maintained by your application. * * @param token The new token. */ private void sendRegistrationToServer(String token) { // Add custom implementation, as needed. FirebaseUser firebaseUser = FirebaseAuth.getInstance().getCurrentUser(); if(firebaseUser != null) { FirebaseDatabase.getInstance().getReference() .child("users") .child(firebaseUser.getUid()) .child("instanceId") .setValue(token); } } }