@Rob, @GBF Comm,
Yes, there is no doubt there is a PLUGIN CONFLICT between Firebase and Notifications. With that said, let me explain what I have working and what I’m waiting on Scott and Rob to fix.
PRIORITIES
For iOS, I’ve decided it’s more important for me to run Firebase (and track device app launching) than to have notification. So, on iOS, I use the Firebase.analytics plugin without notifications. Hopefully, Rob will find out the problem and fix notifications soon. As for ANDROID, both notifications and firebase work perfectly for Android versions <8, but Firebase.analytics does NOT work on Android versions 8+.
The first key to having this work in certain cases was NOT to include the require(“plugin.notifications.v2”) definition in the code unless the platform is Android - iOS platform never includes the require.
The second key to having these plugins play nice, some of the time at least, is to make sure not to include the require(“plugin.firebaseAnalytics”) definition or run the firebase init code until at least 5 seconds after the notifications initialization occurs.
So, although it is odd to have such checks and dependencies between plugins, it’s the only thing I could do without waiting any longer - I just released my new game app today: http://onelink.to/wpt53m and this game incorporates these odd dependencies properly.
So Rob, I’m still working with Scott (when he has time) to resolve the Firebase.analytics failure on Android v8+ - we sent him the cash to purchase an Android 8 phone, so that should be coming. The question is, what about the notifications crash? In view of Firebase’s here-to-stay liklihood, can CoronaLabs acquire Scott’s plugin and help him to fix the Android 8+ problem, too? It has already been a couple of weeks and he needs help IMHO.
btw, @GBFComm, keeping or removing the definition in my build.settings for iOS or Android makes no difference. The key is not to include the REQUIRE outside of a code routine. For example, function init_notifs() should have the require( definition of either plugin within the subroutine, so that Lua never attempts to init the plugin unless the code needing it asks for it. I hope this makes sense.