I’m developing a client for a webservice API, some of the data is persistent stored in a SQLite database.
is GCM a robust method to keep the data in sync ?
what I mean is, is GCM push notifications enough for keeping the data in sync or messages might get “lost” or the service might be unavailable ?
GCM is primarily designed to serve as a “tickle” mechanism, to help you proactively realize that there is information for you to retrieve by some other means. While it is possible to pack more data than that in 4K payloads, GCM does not have any sort of reliability guarantees, timeliness guarantees, etc.
So, using GCM as an adjunct to polling to keep databases in sync seems perfectly reasonable. Using GCM as the sole delivery mechanism of database changes seems dangerous.