Android GCM SENDER_ID, how to get it?

2020-01-27 19:28发布

I try to migrate to GCM and I have an issue with the SENDER_ID I need to provide. I use the demo project from google. In this project I need, if I understand this well, to provide a SENDER_ID to the application in the CommonUtilities.java file.

The SENDER_ID I provided is the API key I registered on https://code.google.com/apis/console/ and has this form: AIzaSyAxxxxxxx_xxxxxxxxxxxnoGZw (total 40 chars).

Using this string as SENDER_ID I get on "BroadcastReceiver mHandleMessageReceiver" an error message: From GCM: error (INVALID_SENDER)..

Where is the mistake? The string I provide is not the SENDER_ID?

Thank you.

10条回答
\"骚年 ilove
2楼-- · 2020-01-27 20:02

Go to "Dashboard" in the latest version of the developers console, click the drop down arrow under "Project: Turtle Power" and you can see the Project number right there! Use that as your SENDER_ID

(fake project so don't even try it =P)

enter image description here

查看更多
放荡不羁爱自由
3楼-- · 2020-01-27 20:13

Go to your Google APIs Console page. Select the project you use from the drop down menu on the left. Select Overview and now you can see you project number. It is the SENDER_ID you have to use

Another way to get your project number is to get the value of "project" from your url. Your url has to be like this: "https://code.google.com/apis/console/b/0/#project:886025556782". Here the project number is "886025556782". this number is SENDER_ID

查看更多
一夜七次
4楼-- · 2020-01-27 20:14

Maybe you haven't activated Google Cloud Messaging for Android in API COnsole. Here is the instructions:

http://developer.android.com/google/gcm/gs.html

查看更多
▲ chillily
5楼-- · 2020-01-27 20:14

the SENDER_ID you are using is nothing but the authorization key. you can find the SENDER_ID at your projects Google APIs Console pages URL

https://code.google.com/apis/console/#project:8543162367

here 8543162367 will be your SENDER_ID , and also the Project Id is no longer numeric its alpha-numeric or only numeric or only alphabetic anything but its position is same as shown by me

查看更多
一夜七次
6楼-- · 2020-01-27 20:17

Yet another updated answer with little more explanation for the confused(..like I was).(with due credit to @azgolfer, @PankajAndroid and @Adam)

1- If you create a project at https://console.developers.google.com, you can see two things "PROJECT ID" and "PROJECT NUMBER" in project overview. Project Id is no longer numeric but alpha numeric like master-xxxxx-1234. Project number is a 11 digit number like 123456789100.

project dashbaord

2- Even when you inspect the browser link you can find it as: https://console.developers.google.com/project/master-xxxxx-1234

So is master-xxxxx-1234 is the SENDER_ID (at some places referred as PROJECT ID)? NO.

You have to use the project number as project id in GCM.

3- Where can you cross check that project id is being used as project id?

On API Dashbaord. (url: https://code.google.com/apis/console/b/0/?noredirect#project:12345678900 - where 12345678900 is your project number on project dashboard.

google api dashboard

SUMMARY: Project Id in Project Dashboard and API Dashboard are different. The project number in project dashbaord is used as project id in API Dashboard and Project Id in project dashbaord as Project name in API Dashboard. So the project number shown in the Project Dashboard when we create project in developer console is used as SENDER_ID in GCM.

查看更多
我想做一个坏孩纸
7楼-- · 2020-01-27 20:19

We spent hours trying to figure this out. The problem was that our android manifest did not include the sender id!

查看更多
登录 后发表回答