GCM
に移行しようとしましたが、提供する必要があるSENDER_ID
に問題があります。 Googleのデモプロジェクトを使用します。このプロジェクトでは、これをよく理解していれば、CommonUtilities.JavaファイルでSENDER_ID
をアプリケーションに提供する必要があります。
私が提供したSENDER_IDは、私が https://code.google.com/apis/console/ に登録したAPIキーであり、この形式はAIzaSyAxxxxxxx_xxxxxxxxxxxnoGZw
(合計40文字)です。
この文字列をSENDER_ID
として使用すると、「BroadcastReceiver mHandleMessageReceiver」にエラーメッセージが表示されます。GCMから:error(INVALID_SENDER)。。
間違いはどこですか?私が提供する文字列はSENDER_ID
?ではありません
ありがとうございました。
いいえ、SENDER_IDはGoogle APIコンソールで登録したプロジェクトIDです。数値文字列である必要があります。例えばブラウザのURIに次のように表示されます。
https://code.google.com/apis/console/#project:4815162342
送信者IDは4815162342です
更新された回答:
Googleはドキュメントを完全に更新していません。上記の答えは古く、これに基づいています ドキュメント そして、まだ更新されていないようです。
更新された Google docs によると、プロジェクト番号onGoogle API ConsoleはSENDER IDとして使用されます
Google APIコンソールページ に移動します。左側のドロップダウンメニューから使用するプロジェクトを選択します。 [概要]を選択すると、project number
が表示されます。 SENDER_ID
を使用する必要があります
プロジェクト番号を取得する別の方法は、URLから「プロジェクト」の値を取得することです。 URLは次のようにする必要があります: " https://code.google.com/apis/console/b/0/#project:886025556782 " 。ここで、プロジェクト番号は「886025556782」です。この番号はSENDER_IDです
2014年11月現在の更新された回答APIプロジェクトを最近作成した場合。
まず最初に、Google Developers Consoleに行き、GCMが有効になっているプロジェクトを見つける必要があります。 [概要]セクション(左側のナビゲーションパネル)を見ると、右側にプロジェクトIDとプロジェクト番号がリストされています。プロジェクトIDが失敗しました(これが私をここに導いた)が、プロジェクト番号を試したときに、クライアントを正しく登録できるようになりました。
注これは、Googleが最近プロジェクトIDを割り当てる方法を変更したため異なる点です。 10月にプロジェクトを作成し、すべて数値のプロジェクトIDが与えられました。しかし、今日作成したものには、2ワードと番号ID(Hamster-Party-420など)と数値のプロジェクト番号が与えられました。私のプロジェクトのURLにはHamster-Party-420が含まれており、プロジェクト番号は[概要]画面にのみ表示されます。
さらに別の更新された回答では、混乱した(...のように)説明が少し増えました(@ azgolfer、@ PankajAndroid、および@Adamに感謝します)
1- https://console.developers.google.com でプロジェクトを作成すると、プロジェクトの概要に「プロジェクトID」と「プロジェクト番号」の2つの項目が表示されます。 プロジェクトIDは数値ではなくなりましたですが、master-xxxxx-1234のような英数字です。 プロジェクト番号は11桁の数字です123456789100など
2-ブラウザのリンクを調べても、次のように見つけることができます。https://console.developers.google.com/ project/master-xxxxx-1234
Master-xxxxx-1234はSENDER_IDです(PROJECT IDと呼ばれる場所もあります)?番号。
GCMでプロジェクトIDとしてプロジェクト番号を使用する必要があります。
3-プロジェクトIDがプロジェクトIDとして使用されていることをどこで確認できますか?
API Dashbaordで。 (url: https://code.google.com/apis/console/b/0/?noredirect#project:123456789 -12345678900はプロジェクトダッシュボードのプロジェクト番号です。
SUMMARY: Project DashboardとAPI DashboardのプロジェクトIDは異なります。 プロジェクトdashbaordのプロジェクト番号はAPIダッシュボードのプロジェクトIDとして使用され、プロジェクトdashbaordのプロジェクトIDはAPIダッシュボードのプロジェクト名として使用されます。開発者コンソールでプロジェクトを作成すると、GCMでSENDER_IDとして使用されます。
おそらく、API COnsoleでAndroidのGoogleクラウドメッセージングを有効にしていない可能性があります。手順は次のとおりです。
これを理解しようとして何時間も費やしました。問題は、Androidマニフェストに送信者IDが含まれていなかったことです!
Webプッシュ、Androidプッシュなどを行っているためにここに来た場合、別の答えがあります。
ソース: https://firebase.google.com/docs/cloud-messaging/js/client