We are writing an Application that will exchange messages between users extensively. We are using Google App Engine
The traditional way is to have an Application Server that stores all the GCM_ID of the users. So if User 1 wants to send message to User 2, then
- The User 1 sends the message to Application server with payload which contains message and recipient id (User 2 in our case)
- The application server retrieves the GCM_ID of User 2 and with the help of sender API pushes the message to User 2
- User 2 receives the message
What we implemented:
Now as the number of users and app usage increases ( We hope it does :) ), the costing related to AppEngine w.r.t number of instances, no. of read/writes etc increases.
We want to reduce this costing. Since pushing message to GCM server is a REST Call (via https://android.googleapis.com/gcm/send) , we came up with the idea of storing GCM_ID's of user's friends in the Android App (DB to be specific) & were able to push messages from one user to another.
So instead of a server having all GCM_ID's we are exchanging relevant GCM_ID's related to users via server and storing them in App DB
We also have designed the app to take care of change in GCM_ID of another user, Un-installation of App etc..
Are we missing anything by not choosing to push via our own server?
Is following such an implementation correct?
Regards,
Varun
You received this message because you are subscribed to the Google
Groups "Android Developers" group.
To post to this group, send email to android-developers@googlegroups.com
To unsubscribe from this group, send email to
android-developers+unsubscribe@googlegroups.com
For more options, visit this group at
http://groups.google.com/group/android-developers?hl=en
---
You received this message because you are subscribed to the Google Groups "Android Developers" group.
To unsubscribe from this group and stop receiving emails from it, send an email to android-developers+unsubscribe@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.