popinfoIDが無効になっている場合、このエラーメッセージが表示されます。
tokenが正しく取得できていない可能性がありますので、以下の点をご確認ください。
【iOS】
・SDKとXcodeのバージョンの組み合わせが正しいかを、
スタートアップガイドの「開発環境の確認」にてご確認ください。
・製品用のビルド証明書でAdHocビルドをしており、ビルド時の設定が間違っている。
・アプリ起動時に Objective-C と Swift 両方で記述している箇所がある。
・デバイストークンの払い出しが行われているかどうかの確認をお願いします。
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」とすることで
解消される場合もございます。
・アプリをインストールした直後や、許諾変更直後は状況によりサーバー側への反映に
タイムラグが発生することがございますので、時間をおいて再度ご確認ください。