Commit 6402f88b authored by Libin Lu's avatar Libin Lu

use local intents

parent 3a5fed83
......@@ -25,6 +25,7 @@ import com.google.firebase.messaging.RemoteMessage.Notification;
import android.app.Application;
import android.os.Bundle;
import android.support.v4.app.NotificationManagerCompat;
import android.support.v4.content.LocalBroadcastManager;
import android.util.Log;
import android.content.Context;
......@@ -165,7 +166,7 @@ public class FIRMessagingModule extends ReactContextBaseJavaModule implements Li
private void registerTokenRefreshHandler() {
IntentFilter intentFilter = new IntentFilter("com.evollu.react.fcm.FCMRefreshToken");
getReactApplicationContext().registerReceiver(new BroadcastReceiver() {
LocalBroadcastManager.getInstance(getReactApplicationContext()).registerReceiver(new BroadcastReceiver() {
@Override
public void onReceive(Context context, Intent intent) {
if (getReactApplicationContext().hasActiveCatalystInstance()) {
......@@ -211,7 +212,7 @@ public class FIRMessagingModule extends ReactContextBaseJavaModule implements Li
private void registerMessageHandler() {
IntentFilter intentFilter = new IntentFilter("com.evollu.react.fcm.ReceiveNotification");
getReactApplicationContext().registerReceiver(new BroadcastReceiver() {
LocalBroadcastManager.getInstance(getReactApplicationContext()).registerReceiver(new BroadcastReceiver() {
@Override
public void onReceive(Context context, Intent intent) {
if (getReactApplicationContext().hasActiveCatalystInstance()) {
......@@ -251,7 +252,7 @@ public class FIRMessagingModule extends ReactContextBaseJavaModule implements Li
private void registerLocalMessageHandler() {
IntentFilter intentFilter = new IntentFilter("com.evollu.react.fcm.ReceiveLocalNotification");
getReactApplicationContext().registerReceiver(new BroadcastReceiver() {
LocalBroadcastManager.getInstance(getReactApplicationContext()).registerReceiver(new BroadcastReceiver() {
@Override
public void onReceive(Context context, Intent intent) {
if (getReactApplicationContext().hasActiveCatalystInstance()) {
......
......@@ -2,6 +2,7 @@ package com.evollu.react.fcm;
import android.content.Intent;
import android.os.Bundle;
import android.support.v4.content.LocalBroadcastManager;
import android.util.Log;
import com.google.firebase.iid.FirebaseInstanceId;
......@@ -29,6 +30,6 @@ public class InstanceIdService extends FirebaseInstanceIdService {
Bundle bundle = new Bundle();
bundle.putString("token", refreshedToken);
i.putExtras(bundle);
sendBroadcast(i);
LocalBroadcastManager.getInstance(getApplicationContext()).sendBroadcast(i);
}
}
......@@ -5,6 +5,7 @@ import android.content.Intent;
import android.os.Bundle;
import android.os.Handler;
import android.os.Looper;
import android.support.v4.content.LocalBroadcastManager;
import android.util.Log;
import com.facebook.react.ReactApplication;
......@@ -41,12 +42,12 @@ public class MessagingService extends FirebaseMessagingService {
ReactContext context = mReactInstanceManager.getCurrentReactContext();
// If it's constructed, send a notification
if (context != null) {
context.sendOrderedBroadcast(message, null);
LocalBroadcastManager.getInstance(getApplicationContext()).sendBroadcast(message);
} else {
// Otherwise wait for construction, then send the notification
mReactInstanceManager.addReactInstanceEventListener(new ReactInstanceManager.ReactInstanceEventListener() {
public void onReactContextInitialized(ReactContext context) {
context.sendOrderedBroadcast(message, null);
LocalBroadcastManager.getInstance(getApplicationContext()).sendBroadcast(message);
}
});
if (!mReactInstanceManager.hasStartedCreatingInitialContext()) {
......
......@@ -17,6 +17,7 @@ import android.os.Build;
import android.os.Bundle;
import android.support.v4.app.NotificationCompat;
import android.support.v4.app.NotificationManagerCompat;
import android.support.v4.content.LocalBroadcastManager;
import android.util.Log;
import java.io.IOException;
......@@ -191,7 +192,7 @@ public class SendNotificationTask extends AsyncTask<Void, Void, Void> {
Log.d(TAG, "broadcast intent if it is a scheduled notification");
Intent i = new Intent("com.evollu.react.fcm.ReceiveLocalNotification");
i.putExtras(bundle);
mContext.sendOrderedBroadcast(i, null);
LocalBroadcastManager.getInstance(mContext).sendBroadcast(i);
}
if(!mIsForeground || bundle.getBoolean("show_in_foreground")){
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment