My RN mobile app works with Firebase as a Web App. Everything works fine. Now I need to add the push notifications functionality to my mobile app. I have read several articles about push notifications for RN apps:
https://blog.logrocket.com/react-native-push-notifications-firebase-cloud-messaging/
https://medium.com/alameda-dev/react-native-push-notifications-with-firebase-d23ed0dfb3ae
https://enappd.com/blog/firebase-push-notifications-in-react-native/81/
Mainly all articles describe a specific configuration for Android.
My question is, can I use web push notifications in my mobile RN app as described here:
https://firebase.google.com/docs/cloud-messaging/js/client ? Or should I register a separate application for Android and iOS in my Firebase project and add to my RN project platform-specific files (AndroidManifest.xml, google-services.json, build.gradle, etc)?
Firebase apps screenshot
If you use the Web SDK, push notifications will not arrive on iOS as the Safari/WebKit implementation there doesn't support the necessary APIs that Firebase Cloud Messaging depends on. See Push notifications in Apple Safari with FCM for more on this.
Related
My Expo based React Native app worked perfectly fine until I added Firebase App Check.
I am using Firebase JS SDK and not React Native Firebase because it is suggested here for cross platform development.
Now how can I get and then send context.auth (link) to Firebase Functions? Or How can I send what Firebase Storage needs to functions manually?
Storage seems to work fine with AppCheck and AppAttest enabled if it's not Enforced but as soon as I enforce it, the app throws a an error every time there is image load from storage that User is not authenticated.
https://console.firebase.google.com/u/0/project/myapp-4fa75/settings/appcheck
As I understand, you can't because the JS SDK uses reCAPTCHA and native apps have to use either SafetyNet (Android) or DeviceCheck or App Attest (iOS).
I think the only option is using react-native-firebase instead of JS SDK.
You'd have to use config plugins as described here and then configure the app-check module as described here.
I saw Todd's video on enabling offline persistence on YouTube, in that he said it is not needed for Android and iOS apps but is required for Web.
But React Native is neither, so do we need to enable it or is it automatic??
React Native involved writing JavaScript for client apps, which means you're using the Firebase JavaScript APIs, which means you're subject to the implementation details of the Firebase web SDKs. So, if you're using the Firebase web SDKs, you need to explicitly enable offline persistence.
Since I am making a mobile application using Firebase WEB and it has all the features of real time database and storage
The Firebase SDKs for the web platform allow you to build applications that run a browser (Chrome, Firefox, etc), or in another supported environment that runs JavaScript. If you're building a web application, these are all you'll have to deal with.
The Firebase SDKs for Android allow you to build applications that run directly on Android, instead of inside a browser. These are usually written in Java or Kotlin, instead of in JavaScript.
Many Firebase products are available on all three primary platforms that Firebase supports (iOS, Android, and Web). Some growth products (such as Dynamic Links, In-App Messaging, and App Distribution) are only available on iOS and Android though.
this mobile app is a web based SPA that is done through adobe Launch as regular javascript code throughout the entire app, Adobe doc says to do push notifiction using SDK. However we havent used SDK here how would we do push notification in this stance?
I want to push notification to ios and android platform, my application is using onsen-ui and angularjs, my application backend is using PHP language.
At monaca, I use the MonacaPushNotifications plugin it works well, but according to my needs,I need to push different notifications to different users.
Then, I try workerman, but it just can push notification at web environment.
Anybody knows how to do it?Or is there has any other plugins can do it?It is better to push a notification in the backend depending on the data.
Thanks a lot