popinfo ID が無効になっている場合、このエラーメッセージが表示されます。
token が正しく取得できていない可能性がありますので、以下の点をご確認ください。
【iOS】
- SDKとXcodeのバージョンの組み合わせが正しいかを、組み込みガイドの「開発環境の確認」にてご確認ください。
- 製品用のビルド証明書でAdHocビルドをしており、ビルド時の設定が間違っている。
- デバイストークンの払い出しが行われているかどうかの確認をお願いします。
SDKに内包されている ファイル AppDelegate.swift ( Objective Cの場合は、AppDelegate.m )
以下の部分にログ等をいれると、OSからのデバイストークン成功したかどうかの確認ができます。
// [★必須4:ここから] APNsトークンを popinfoReceiver に登録します
func application(_ application: UIApplication, didRegisterForRemoteNotificationsWithDeviceToken deviceToken: Data) {
self.popinfoReceiver.registerToken(deviceToken)
}
// [★必須5:ここから] APNsトークン失敗時のエラーを確認できるようにします
func application(_ application: UIApplication, didFailToRegisterForRemoteNotificationsWithError error: Error) {
NSLog("didFailToRegisterForRemoteNotificationsWithError = \(error)")
}
【Android】
- FANSHIP組み込む以前バージョンもFirebase関連のライブラリを組み込んでおり、FANSHIPのガイド通りにFirebase周りが実装されてない可能性があります。
※Firebase関連のライブラリはFCMを使ってなくても初回起動時に自動でトークンを取得します。 - アプリアップデートにおいてもトークン更新処理は行われないことが多いため、アプリ内で取得してFANSHIPへ渡す実装をする必要があります。このようなFirebase周りの組み込み実装のミスが起こっているケースがございますので、ご確認ください。
- AndroidManifest.xml に以下を設定し、アプリを起動すると、popinfo ID の取得~PUSH 通知受信準備完了(通知受信可能状態)までの処理の結果が画面上にトーストで表示されますので、試してみてください。
<meta-data
android:name="POPINFO_DEBUG"
android:value="true" />
他、以下に当てはまらないかご確認ください。
- 端末がGCM、またはFCMに対応していない
- 端末の時刻が正しくないため、Playストアと同期が取れない
- Playストアのバージョンが古い
- 端末にGoogleアカウントが設定されていない
- AndroidManifest の記述が正しくない
- Sender IDが正しくない
- AndroidManifestファイルの修正、およびFCMサーバーキーと設定ファイルの再設定
- 正しいFirebase コンソールプロジェクトからダウンロードした google-services.json を内包していない
【iOS、Android共通】
アプリを再インストールし、プッシュ通知許諾ダイアログにて「許諾ON」とすることで解消される場合もございます。アプリをインストールした直後や、許諾変更直後は状況によりサーバー側への反映にタイムラグが発生することがございますので、時間をおいて再度ご確認ください。