RMC’yi , push mesajlaşma için FCM kullanan diğer SDK'larla birlikte kullanabilirsiniz. Bunu yapmak için, servisler arasında eventleri dağıtmak için bir Router(Yönlendirici) servisi oluşturmalısınız.
İlk olarak AndroidManifest.xml dosyasına oluşturacağınız servisi ekleyin.
Note |
---|
Eklenecek router servisi manifest dosyası içerisinde diğer FCM servislerinin üstünde olmalıdır. |
AndroidManifest.xml
Code Block |
---|
<service android:name=".RouterFCMService" android:exported="false"> <intent-filter> <action android:name="com.google.firebase.MESSAGING_EVENT" /> </intent-filter> </service> |
MainApplication.java
sınıfı ile aynı dizinde yeni java sınıfı oluşturup,RouterFCMService
şeklinde isimlendirin. Bu şekilde Router sınıfını oluşturun:
android/app/src/main/java/com/yourappname/RouterFCMService.java
Code Block |
---|
import android.util.Log; import java.util.Map; import com.google.firebase.messaging.RemoteMessage; import com.google.firebase.messaging.FirebaseMessagingService; import euromsg.com.euromobileandroid.service.EuroMsgFCMHelper; public class RouterFCMService extends FirebaseMessagingService { private static final String TAG = "FCMService"; @Override public void onMessageReceived(RemoteMessage remoteMessage) { Map<String, String> data = remoteMessage.getData(); String emPushSp = data.get("emPushSp"); if(emPushSp != null) { EuroMsgFCMHelper.onMessageReceived(this,remoteMessage); } else { dispatchNonRMCMessage(remoteMessage); } } @Override public void onNewToken(String token) { Log.d(TAG, "Refreshed token: " + token); EuroMsgFCMHelper.onNewToken(this,token); } private void dispatchNonRMCMessage(RemoteMessage remoteMessage) { // RMC Harici Push işleme mantığınızı buraya uygulayın } } |
...