Is GCM production-ready?
I just wonder if anyone has switched over to it and can report back that it's behaving as advertised. I transitioned from C2DM to GCM a few days ago in a dev build, but my GCM dashboard is still reporting zero data usage which makes me feel not-good. (this is under the Google APIs console, the graph titled Traffic Reports for [your app name]). I've been successfully sending messages between dev builds using GCM.
It seems OK, but I'm hesitant to unleash this on hundreds of thousands of users.
It's official at C2DM documentation that the service has been officially deprecated as of June 26, 2012. This means that C2DM has stopped accepting new users and quota requests..
According to this I assume that GCM is working now and developers are trully encouraged to migrate from C2DM to GCM.
"Developers must use GCM for new development."
According to Google's documentation, it's not supposed to work on the API console :
Viewing statistics
To view statistics and any error messages for your GCM applications:
Go to the Android Developer Console.
Login with your developer account.
You will see a page that has a list of all of your apps.
Click on the "statistics" link next to the app for which you want to view GCM stats.
Now you are on the statistics page.
Go to the drop-down menu and select the GCM metric you want to view.
Note: Stats on the Google API Console are not enabled for GCM. You must use the Android Developer Console.
Related
I am developing an application for a customer. The process of app publishing is completely on the customer (I don't own the account that is used for publishing).
Now I am adding Google Cloud Messaging (GCM) to the app. So to make GCM prerequisites, using the Google APIs Console web site I have to (1) create a Google API project and enable the GCM Service and (2) obtain the Server API Key.
Obviously the only account I can use for making GCM prerequisites is my own account.
I am concerned about the generated GCM prerequisites may not work in production, because of different Google accounts used for publishing the app and for making GCM prerequisites. Also what if I then remove/modify Google API project from my account by mistake? Are my concerns valid? There seems to be no info on this topic.
Agreeing with #abielita in the comments section, the GCM service should still work regardless if the config details are from a different account than that of the one that published it.
The thing that will be complicated is when there is something modified in your project (the one associated with the GCM service) that caused the GCM service to stop, the client will have to try and debug/troubleshoot the issue, which they might contact Google for. And the thing is, I don't think Google (or any company in this matter) would disclose any details of any project that isn't officially their own without any consent from the owner (you). This might delay the process to resolving some things.
With all that said, I would suggest that as much as possible, use the same project, or at the very least, have your client create their own project that you can use for the GCM/FCM service.
Im working on an app with server-client communication. It will have a small
messaging system and maybe i will also synchronize the conigurations with GCM.
All users have to register to use the app and to use the functionalities
from our provided website and they can communicate with other registered user
using the app or the website.
If i use GCM to implement the messaging and the config synchronization, does
every user has to have a google account? This Tutorial says that i have
to create a google account. That wouldnt be good for me.. actually i dont want
my users to be forced to have a google account.
From Android GCM Overview
It uses an existing connection for Google services. For pre-3.0 devices, this requires users to set up their Google account on their mobile devices. A Google account is not a requirement on devices running Android 4.0.4 or higher.
If you are using GCM from the google play service library yes you need a google account because google play services gets updated through the play store.
I need to write a simple app to get PUSH Notifications.
I used GCM which uses Google Play Services to get information.
My questions is - to access GCM, is Google Account required or not?
Can i use another email account to identify device?
Is there any other way to get push notification for another email account or device?
Quoting from GCM Characteristics
It uses an existing connection for Google services. For pre-3.0
devices, this requires users to set up their Google account on their
mobile devices. A Google account is not a requirement on devices
running Android 4.0.4 or higher.
If your app is supporting pre-3.0 devices, so yes, Google Account is required and you need to add this permission to your manifest
<uses-permission android:name="android.permission.GET_ACCOUNTS" />
As stated in other answers, the GCM documentation states that a Google Account is required on the device for Android versions older than 4.0.4.
However, in the following post from the android-gcm Google group, a Google developer claims that if you are using the latest version of Google Play Services, you don't need a Google Account on the device even for older devices (Froyo and Gingerbread).
Some background: Froyo and Gingerbread registration is implemented in
GoogleServicesFramework, using the Google account for registration.
This has resulted in a lot of auth errors for people where the account
was not in a good state.
Starting with ICS, GCM doesn't depend or uses the Google account - you
can use it before you add an account or without any accounts.
The "Play Services" update is implementing the new scheme on all
devices - but it seems a small number of devices have problems with
this, we're investigating - but the numbers are far lower than those
with the old scheme.
If you want to use the code in GSF, for Froyo and Gingerbread - you
need to use the previous library, which sets package name explicitly.
The new library in GCM is using the new registration code.
The actual connection to google is following the same path - we're
gradually (and slowly) moving devices to the new code in play
services.
I haven't tested it, so I can't say if it actually works.
Yes whenever you need to use GCM Google account is required.
Because when you have logged in your account at that time Sender_Id and Application_Id in your url browser. So you will get it through Google Developer Console and use in your application.
Yes, Google account is required.You need to obtain Sender_Id and Application_Id form Google Developer Console by logging into your Google account.
Google account login is no longer needed for GCM to work. So you no need the android.permission.GET_ACCOUNTS permission.
If you are using GCM API with InstanceID (GCM 3.0) or GoogleCloudMessaging.register(GCM 2.0) then there is no need to configure Google account on any Android version and no need to give android.permission.GET_ACCOUNTS Permission.
But if you are using the deprecated library GCMRegistrar.register, you still need a Google Account on older versions
I want to create notification_key for multiple user android devices. I proceed exactly according to guide below, but GCM responses me with 404 –page not found error. Endpoint for User notification should be https://android.googleapis.com/gcm/notification.
Is this functionality available now? At the top of the article, there is a strange note „To try out this feature, sign up using this form“ . This seems as this functionality is not released yet???
http://developer.android.com/google/gcm/notifications.html
Thanks
Vasek
It's a trial feature. You have to signup in order to test this feature :
Sign up to be a trial partner for the latest Google Cloud Messaging features which include bidirectional message streaming, and user notification APIs.
In the signup page you have to specify the GCM Project ID you are using to register to GCM. I assume that once you signup and your signup is approved, you'll be able to use this project ID and its API key to access the new features.
PREAMBLE: the question is wildly obsolete. There's no more Google Checkout, no more Checkout API, and no more notification settings in Wallet Console.
I have a paid app on Android Market. I've set up an HTTPS notification URL in Google Checkout settings. Yet notifications don't come.
My Google Checkout settings under Integration go like this:
My company will only post digitally signed carts - checked
API callback URL - provided, it's HTTPS and it's valid
Notification as XML - checked
API version - 2.5
Notification filtering - checked
Please, what am I doing wrong? Are realtime order notifications supported for Android Market at all? If so, is there a separate UI for setting those up?
EDIT: any data points would be welcome. If you sell stuff on the Market and do get those HTTP notifications, let's compare the setups.
EDIT2: seriously considering timed polling of my Google Checkout account. :(
EDIT3: contacted Google Checkout support. No substantial response for over a week. :(( On the brighter side, it is possible to retrieve the list of one's Google Checkout orders, with date and state filtering. On to retrieving order details...
The support rep told me it's by design, I should implement account polling with notification history API.
Specifically: https://developers.google.com/checkout/developer/Google_Checkout_XML_API_Order_Report_API describes how to get the list of orders in given state
https://developers.google.com/checkout/developer/Google_Checkout_XML_API_Notification_History_API lets you retrieve order details (getting just the "new order" notification is sufficient in my case).
EDIT: you cannot use some parts of the Google Checkout API with Android Market orders (like marking as archived).
This is not documented. Related question here.