Yesterday was a sad day as Facebook announced that they will be discontinuing Parse, their platform for mobile developers.

To help developers who now need to switch services, we've built a migration tool to help Parse Push users switch to OneSignal.

Regardless of whether Parse Push users decide to switch to OneSignal, build their own notification delivery system, or try a different push service, there is a very important step that Android developers must take.

GCM Android Push notifications normally require developers to create a Google Developer Project and to use their Sender ID (Also known as Project Number) and Server Key to set up their notification system. However, in order to simplify the setup process, Parse encouraged developers to instead use Parse's Sender ID and Server Key.

Because of this Parse Android Push tokens will not work with any other push service.

Fortunately, there is a way to fix this but developers must start now.

The solution is to add your own Sender ID to your Android application in addition to the Parse one. This will result in users receiving a push token that is compatible with both Parse's Sender ID and your own Sender ID. After a couple months, most of your users will have tokens that you can now safely move to a different service.

Here's a short guide on the exact steps you need to take:
  1. Follow these instructions to create a Google Project.
  2. Add the com.parse.push.gcm_sender_id metadata attribute to your app manifest so that Parse registers for push with your GCM sender ID. For instance, if your GCM sender ID is 123427208255, then you should add a metadata attribute named com.parse.push.gcm_sender_id with the value id:123427208255 (note that the "id:" prefix is required). This attribute requires Android SDK 1.8.0 or higher.
  3. Update your application to set the GCMSenderId using the following code:
    final ParseInstallation parseInstallation = ParseInstallation.getCurrentInstallation(); parseInstallation.put("GCMSenderId",YOUR_NEW_SENDER_ID); parseInstallation.saveInBackground();
  4. Release an updated version of your application with this change.
  5. After most of your active users have installed and run the updated version of your app, it is now safe to switch to a different Android Push provider.

Until you take the above steps, OneSignal's Parse importer will ignore any incompatible Android Push devices.