diff --git a/android/app/build.gradle b/android/app/build.gradle index d2c1944a9d736ee97bf784c49458f496284dde01..9ea834b292ae7390634cdaf1fc734d26bdf48e96 100644 --- a/android/app/build.gradle +++ b/android/app/build.gradle @@ -17,6 +17,25 @@ android { proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro' } } + testOptions { + unitTests.all { t -> + reports { + html.enabled true + } + testLogging { + events "PASSED", "SKIPPED", "FAILED", "standardOut", "standardError" + } + afterSuite { desc, result -> + if (!desc.parent) { // will match the outermost suite + def output = " ${result.resultType} (${result.successfulTestCount} successes, ${result.failedTestCount} failures, ${result.skippedTestCount} skipped) " + def repeatLength = output.length() + println '\n\n' + ('-' * repeatLength) + '\n' + output + '\n' + ('-' * repeatLength) + '\n' + + println "see report at file://${t.reports.html.destination}/index.html" + } + } + } + } } dependencies { diff --git a/android/app/src/main/AndroidManifest.xml b/android/app/src/main/AndroidManifest.xml index ffef75f236e30d1e2d4b99280dcb04964b70afd9..b6dad7c76ffdde4c620b013f501f8c97055b7781 100644 --- a/android/app/src/main/AndroidManifest.xml +++ b/android/app/src/main/AndroidManifest.xml @@ -4,7 +4,7 @@ package="com.wix.reactnativenotifications"> + android:name=".fcm.FcmInstanceIdListenerService"> @@ -30,7 +30,7 @@ diff --git a/android/app/src/main/java/com/wix/reactnativenotifications/Defs.java b/android/app/src/main/java/com/wix/reactnativenotifications/Defs.java index 26a8b7a0383c642fa3e17102d582e502d05646eb..ec7f72ace0d84f425c645e00ae5331df5dbac3a2 100644 --- a/android/app/src/main/java/com/wix/reactnativenotifications/Defs.java +++ b/android/app/src/main/java/com/wix/reactnativenotifications/Defs.java @@ -2,7 +2,6 @@ package com.wix.reactnativenotifications; public interface Defs { String LOGTAG = "ReactNativeNotifs"; - String GCM_SENDER_ID_ATTR_NAME = "com.wix.reactnativenotifications.gcmSenderId"; String TOKEN_RECEIVED_EVENT_NAME = "remoteNotificationsRegistered"; diff --git a/android/app/src/main/java/com/wix/reactnativenotifications/RNNotificationsModule.java b/android/app/src/main/java/com/wix/reactnativenotifications/RNNotificationsModule.java index 8fb5f010535baccf5814dead7be0df3a1a7da05b..61dddec58ac144b6810d6df7a94bdd474f501bdf 100644 --- a/android/app/src/main/java/com/wix/reactnativenotifications/RNNotificationsModule.java +++ b/android/app/src/main/java/com/wix/reactnativenotifications/RNNotificationsModule.java @@ -15,7 +15,6 @@ import com.facebook.react.bridge.ReactApplicationContext; import com.facebook.react.bridge.ReactContextBaseJavaModule; import com.facebook.react.bridge.ReactMethod; import com.facebook.react.bridge.ReadableMap; -import com.wix.reactnativenotifications.core.AppLifecycleFacade; import com.wix.reactnativenotifications.core.AppLifecycleFacadeHolder; import com.wix.reactnativenotifications.core.InitialNotificationHolder; import com.wix.reactnativenotifications.core.NotificationIntentAdapter; @@ -25,9 +24,7 @@ import com.wix.reactnativenotifications.core.notification.PushNotification; import com.wix.reactnativenotifications.core.notification.PushNotificationProps; import com.wix.reactnativenotifications.core.notificationdrawer.IPushNotificationsDrawer; import com.wix.reactnativenotifications.core.notificationdrawer.PushNotificationsDrawer; -import com.wix.reactnativenotifications.gcm.FcmInstanceIdRefreshHandlerService; - -import com.google.firebase.FirebaseApp; +import com.wix.reactnativenotifications.fcm.FcmInstanceIdRefreshHandlerService; import static com.wix.reactnativenotifications.Defs.LOGTAG; @@ -50,7 +47,7 @@ public class RNNotificationsModule extends ReactContextBaseJavaModule implements @Override public void initialize() { Log.d(LOGTAG, "Native module init"); - startGcmIntentService(FcmInstanceIdRefreshHandlerService.EXTRA_IS_APP_INIT); + startFcmIntentService(FcmInstanceIdRefreshHandlerService.EXTRA_IS_APP_INIT); final IPushNotificationsDrawer notificationsDrawer = PushNotificationsDrawer.get(getReactApplicationContext().getApplicationContext()); notificationsDrawer.onAppInit(); @@ -75,7 +72,7 @@ public class RNNotificationsModule extends ReactContextBaseJavaModule implements @ReactMethod public void refreshToken() { Log.d(LOGTAG, "Native method invocation: refreshToken()"); - startGcmIntentService(FcmInstanceIdRefreshHandlerService.EXTRA_MANUAL_REFRESH); + startFcmIntentService(FcmInstanceIdRefreshHandlerService.EXTRA_MANUAL_REFRESH); } @ReactMethod @@ -115,7 +112,7 @@ public class RNNotificationsModule extends ReactContextBaseJavaModule implements promise.resolve(new Boolean(hasPermission)); } - protected void startGcmIntentService(String extraFlag) { + protected void startFcmIntentService(String extraFlag) { final Context appContext = getReactApplicationContext().getApplicationContext(); final Intent tokenFetchIntent = new Intent(appContext, FcmInstanceIdRefreshHandlerService.class); tokenFetchIntent.putExtra(extraFlag, true); diff --git a/android/app/src/main/java/com/wix/reactnativenotifications/gcm/FcmInstanceIdListenerService.java b/android/app/src/main/java/com/wix/reactnativenotifications/fcm/FcmInstanceIdListenerService.java similarity index 75% rename from android/app/src/main/java/com/wix/reactnativenotifications/gcm/FcmInstanceIdListenerService.java rename to android/app/src/main/java/com/wix/reactnativenotifications/fcm/FcmInstanceIdListenerService.java index 2456913ea09c931e99aa29550c9a61ac0c07c237..061b7331980f53d4947510165e44f0c65c6121d4 100644 --- a/android/app/src/main/java/com/wix/reactnativenotifications/gcm/FcmInstanceIdListenerService.java +++ b/android/app/src/main/java/com/wix/reactnativenotifications/fcm/FcmInstanceIdListenerService.java @@ -1,4 +1,4 @@ -package com.wix.reactnativenotifications.gcm; +package com.wix.reactnativenotifications.fcm; import android.os.Bundle; import android.util.Log; @@ -8,12 +8,10 @@ import com.google.firebase.messaging.RemoteMessage; import com.wix.reactnativenotifications.core.notification.IPushNotification; import com.wix.reactnativenotifications.core.notification.PushNotification; -import java.util.Map; - import static com.wix.reactnativenotifications.Defs.LOGTAG; /** - * Instance-ID + token refreshing handling service. Contacts the GCM to fetch the updated token. + * Instance-ID + token refreshing handling service. Contacts the FCM to fetch the updated token. * * @author amitd */ @@ -22,14 +20,14 @@ public class FcmInstanceIdListenerService extends FirebaseMessagingService { @Override public void onMessageReceived(RemoteMessage message){ Bundle bundle = message.toIntent().getExtras(); - Log.d(LOGTAG, "New message from GCM: " + bundle); + Log.d(LOGTAG, "New message from FCM: " + bundle); try { final IPushNotification notification = PushNotification.get(getApplicationContext(), bundle); notification.onReceived(); } catch (IPushNotification.InvalidNotificationException e) { - // A GCM message, yes - but not the kind we know how to work with. - Log.v(LOGTAG, "GCM message handling aborted", e); + // An FCM message, yes - but not the kind we know how to work with. + Log.v(LOGTAG, "FCM message handling aborted", e); } } } diff --git a/android/app/src/main/java/com/wix/reactnativenotifications/gcm/FcmInstanceIdRefreshHandlerService.java b/android/app/src/main/java/com/wix/reactnativenotifications/fcm/FcmInstanceIdRefreshHandlerService.java similarity index 73% rename from android/app/src/main/java/com/wix/reactnativenotifications/gcm/FcmInstanceIdRefreshHandlerService.java rename to android/app/src/main/java/com/wix/reactnativenotifications/fcm/FcmInstanceIdRefreshHandlerService.java index 8270ad68e724f6463bee122fb17462c0a6a18adb..dd2cc9a210c73c506f45ddb0e0311067dfd19931 100644 --- a/android/app/src/main/java/com/wix/reactnativenotifications/gcm/FcmInstanceIdRefreshHandlerService.java +++ b/android/app/src/main/java/com/wix/reactnativenotifications/fcm/FcmInstanceIdRefreshHandlerService.java @@ -1,4 +1,4 @@ -package com.wix.reactnativenotifications.gcm; +package com.wix.reactnativenotifications.fcm; import android.app.IntentService; import android.content.Intent; @@ -14,17 +14,17 @@ public class FcmInstanceIdRefreshHandlerService extends IntentService { @Override protected void onHandleIntent(Intent intent) { - IFcmToken gcmToken = FcmToken.get(this); - if (gcmToken == null) { + IFcmToken fcmToken = FcmToken.get(this); + if (fcmToken == null) { return; } if (intent.getBooleanExtra(EXTRA_IS_APP_INIT, false)) { - gcmToken.onAppReady(); + fcmToken.onAppReady(); } else if (intent.getBooleanExtra(EXTRA_MANUAL_REFRESH, false)) { - gcmToken.onManualRefresh(); + fcmToken.onManualRefresh(); } else { - gcmToken.onNewTokenReady(); + fcmToken.onNewTokenReady(); } } } diff --git a/android/app/src/main/java/com/wix/reactnativenotifications/gcm/FcmToken.java b/android/app/src/main/java/com/wix/reactnativenotifications/fcm/FcmToken.java similarity index 94% rename from android/app/src/main/java/com/wix/reactnativenotifications/gcm/FcmToken.java rename to android/app/src/main/java/com/wix/reactnativenotifications/fcm/FcmToken.java index 44c8ec6dffe65f122ad21a4f51c2438fd2f11a31..04c275590f447a10a4e724713a3fd21c3e850736 100644 --- a/android/app/src/main/java/com/wix/reactnativenotifications/gcm/FcmToken.java +++ b/android/app/src/main/java/com/wix/reactnativenotifications/fcm/FcmToken.java @@ -1,4 +1,4 @@ -package com.wix.reactnativenotifications.gcm; +package com.wix.reactnativenotifications.fcm; import android.content.Context; import android.util.Log; @@ -29,8 +29,8 @@ public class FcmToken implements IFcmToken { public static IFcmToken get(Context context) { Context appContext = context.getApplicationContext(); - if (appContext instanceof INotificationsGcmApplication) { - return ((INotificationsGcmApplication) appContext).getFcmToken(context); + if (appContext instanceof INotificationsFcmApplication) { + return ((INotificationsFcmApplication) appContext).getFcmToken(context); } return new FcmToken(appContext); } diff --git a/android/app/src/main/java/com/wix/reactnativenotifications/gcm/IFcmToken.java b/android/app/src/main/java/com/wix/reactnativenotifications/fcm/IFcmToken.java similarity index 92% rename from android/app/src/main/java/com/wix/reactnativenotifications/gcm/IFcmToken.java rename to android/app/src/main/java/com/wix/reactnativenotifications/fcm/IFcmToken.java index 9e75d39014c1a21bce7f854a3e0aa2d97abeaf0c..ce9fd72ed228f658b2a8ea2a41f64e16906767ab 100644 --- a/android/app/src/main/java/com/wix/reactnativenotifications/gcm/IFcmToken.java +++ b/android/app/src/main/java/com/wix/reactnativenotifications/fcm/IFcmToken.java @@ -1,4 +1,4 @@ -package com.wix.reactnativenotifications.gcm; +package com.wix.reactnativenotifications.fcm; public interface IFcmToken { diff --git a/android/app/src/main/java/com/wix/reactnativenotifications/fcm/INotificationsFcmApplication.java b/android/app/src/main/java/com/wix/reactnativenotifications/fcm/INotificationsFcmApplication.java new file mode 100644 index 0000000000000000000000000000000000000000..5a2cb1c5c7dd88dea61a2e8abf445191d7c2dafe --- /dev/null +++ b/android/app/src/main/java/com/wix/reactnativenotifications/fcm/INotificationsFcmApplication.java @@ -0,0 +1,7 @@ +package com.wix.reactnativenotifications.fcm; + +import android.content.Context; + +public interface INotificationsFcmApplication { + IFcmToken getFcmToken(Context context); +} diff --git a/android/app/src/main/java/com/wix/reactnativenotifications/gcm/INotificationsGcmApplication.java b/android/app/src/main/java/com/wix/reactnativenotifications/gcm/INotificationsGcmApplication.java deleted file mode 100644 index d318ecc4a9e1b78c99ce43875459c5d841426ad5..0000000000000000000000000000000000000000 --- a/android/app/src/main/java/com/wix/reactnativenotifications/gcm/INotificationsGcmApplication.java +++ /dev/null @@ -1,7 +0,0 @@ -package com.wix.reactnativenotifications.gcm; - -import android.content.Context; - -public interface INotificationsGcmApplication { - IFcmToken getFcmToken(Context context); -} diff --git a/example/android/myapplication/src/main/AndroidManifest.xml b/example/android/myapplication/src/main/AndroidManifest.xml index 5b14d1a61c145169b16b6d9521c08d63fe94547c..12292219a5ae5622c71b75e0060c1326a69d4c5f 100644 --- a/example/android/myapplication/src/main/AndroidManifest.xml +++ b/example/android/myapplication/src/main/AndroidManifest.xml @@ -12,9 +12,6 @@ android:usesCleartextTraffic="true" android:label="@string/app_name" android:theme="@style/AppTheme"> -