2016-06-23 6 views
0

GCMを統合したAndroidアプリを作成してからしばらくしています。以前はAPIコンソールで、サーバーIPをホワイトリストとして指定しました。しかし、私の最新のプロジェクトでは、このオプションはありません。代わりに、私が設定した署名鍵からSHA1を要求します。Android GCMエラー認証送信者アカウント

私は登録されたデバイスIDに通知を送信しようとすると、しかし、私は

を私は見ることができないので、私は正しいAPIキーを使用しています「送信者アカウントの認証エラーが発生しました」

を取得なにが問題ですか。

+0

は、あなたがこれを解決しましたか? – noogui

答えて

1

以前はAPIコンソールで、サーバーIPをホワイトリストとして指定しました。しかし、最新のプロジェクトではこのオプションはありません

このセクションは、GDCでSERVER APIキーを生成するときに表示されます。

GCM Authenticationガイドでこれを見つけた「送信者アカウントの認証エラーが発生しました」。これらが実装されていることを確認してください。

メッセージリクエストは、HTTPヘッダーとHTTPボディの2つの部分で構成されています。

HTTPヘッダは、次のヘッダーを含める必要があります

認可:YOUR_API_KEY =キーコンテンツタイプ:アプリケーション/ JSONを JSONため、 application/x-www-form-urlencoded;プレーンテキストの場合はcharset = UTF-8。 Content-Typeを省略すると、その形式はプレーンテキストと見なされます。例えば

Content-Type:application/json 
Authorization:key=AIzaSyZ-1u...0GBYzPu7Udno5aA 

{ 
    "to" : "bk3RNwTe3H0:CI2k_HHwgIpoDKCIZvvDMExUdFQ3P1...", 
    "data" : { 
    ... 
    }, 
} 

追加注:

Authentication Error 401 - メッセージを送信するために使用される送信者のアカウントは認証できませんでした。

原因が考えられます。

-Authorizationヘッダが存在しないか、またはHTTPリクエストに無効な構文で。

- 無効なプロジェクト番号がキーとして送信されました。

- 有効ですが、GCMサービスが無効です。

-Requestは、サーバーキーIPでホワイトリストに登録されていないサーバーから送信されました。認証 ヘッダー内に送信しているトークンが、プロジェクトに関連付けられている正しいAPIキーであることを確認します。詳細については、 Checking the validity of an API Key を参照してください。

0

Google Cloud MessagingのデフォルトはFirebase Cloud Messaging(FCM)です。 Firebase Consoleに記載されているサーバーキーを使用してください。

これまでは、Google Cloud ProjectをFirebaseにインポートする必要があります。

Import instructions(のみ従って、「あなたのコンソールプロジェクトを移行する」を参照)

関連する問題