Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

How to Parse send push without gcm registration?

While implementing push with Parse, I didn't use anything related to Google Cloud Messaging. I didn't open Google dev console and switch on GCM messaging, also I didn't get any sender ID and I didn't register devices to obtain registration ID, however Parse could send push. I wonder Parse uses its own socket? In Parse Android source code, I couldn't catch anything related to this. Now all Parse migrating services need GCM registration ID including with Parse's own open source push backend solution. Can someone give detailed information about this?

like image 219
magirtopcu Avatar asked Feb 27 '16 06:02

magirtopcu


People also ask

Can I send push notifications without FCM?

Without FCM, you'd need to build more than three notification systems. You'd need one each for iOS and Android, but then you'd also need to accommodate all the different types of browsers for the web application to deliver push notifications without a hitch.

Can I use FCM without firebase?

How it is possible? It's definitely possible -- you don't have to use Firebase to deliver push notifications. You can roll out your own notification solution or consider a paid product such as Pushy (pushy.me) which does not rely on Firebase Cloud Messaging. Full disclosure - I am the Founder & CEO at Pushy.

What is GCM registration?

Registration id is a unique identifier for particular package on a particular device. GCM identifies the target using this id.


1 Answers

Parse DO use GCM. They just use their own account.

You don't have to believe me, the android SDK has been made open source a while ago: https://github.com/ParsePlatform/Parse-SDK-Android

These are the class used to integrate to GCM: https://github.com/ParsePlatform/Parse-SDK-Android/blob/bdd5f50d51d30030b9df12c0e09d08d8859e64be/Parse/src/main/java/com/parse/GCMService.java https://github.com/ParsePlatform/Parse-SDK-Android/blob/e2329512e5531f0efd56671c02f476285f87386b/Parse/src/main/java/com/parse/GcmRegistrar.java https://github.com/ParsePlatform/Parse-SDK-Android/blob/bdd5f50d51d30030b9df12c0e09d08d8859e64be/Parse/src/main/java/com/parse/GcmBroadcastReceiver.java

However they have a method of supporting Push notification without GCM, it's mostly made for non-Google devices or to release the app in non Google-Play market. It's called PPNS

The switch between provider is done inside this class: https://github.com/ParsePlatform/Parse-SDK-Android/blob/bdd5f50d51d30030b9df12c0e09d08d8859e64be/Parse/src/main/java/com/parse/PushService.java

the PPNS class is supposedly handled by a class called com.parse.PPNSService which is not in the github code. It is instantiated via reflection, I'm guessing they add it later in the jar in someway and they didn't make it public. It surely would have to open and handle it's own socket.

like image 195
Daniele Segato Avatar answered Sep 19 '22 02:09

Daniele Segato