このページでは、一般的なエラーコードとその意味、それに対するアプリやゲームでの対応について説明します。
一般的なエラーコード
次の表に、API がすべてのプラットフォームで返すエラーと、推奨される対応手順を示します。
エラーコード | 説明 | 対応手順 |
---|---|---|
API_NOT_AVAILABLE |
Integrity API を使用できません。Play ストアのバージョンが古いか、アプリがこの API を使用できるようになっていません。 | 1)アプリが API を使用できるようになっていることを確認します。 2)Google Play ストアを更新するようにユーザーに依頼します。 |
NETWORK_ERROR |
利用可能なネットワークが見つかりませんでした。 | ネットワーク接続を確認するようにユーザーに依頼します。 |
PLAY_STORE_NOT_FOUND |
デバイス上に公式の Play ストア アプリが見つかりませんでした。 | Google Play ストアをインストールまたは有効にするようにユーザーに依頼します。 |
PLAY_STORE_VERSION_OUTDATED |
Play ストア アプリを更新する必要があります。 | Google Play ストアを更新するようにユーザーに依頼します。 |
PLAY_STORE_ACCOUNT_NOT_FOUND |
デバイス上に Play ストア アカウントが見つかりませんでした。Play Integrity API では、未認証のリクエストがサポートされるようになっています。このエラーコードは、サポート対象外の古いバージョンの Play ストアにのみ使用されます。 | Google Play ストアにログインするようにユーザーに依頼します。 |
CANNOT_BIND_TO_SERVICE |
Play ストアでサービスにバインドできませんでした。デバイスに古いバージョンの Play ストアがインストールされている可能性があります。 | Google Play ストアを更新するようにユーザーに依頼します。 |
APP_NOT_INSTALLED |
呼び出し元アプリがインストールされていません。 | なんらかの問題が発生しており、攻撃の可能性もあります。対応手順はありません。 |
PLAY_SERVICES_NOT_FOUND |
Play 開発者サービスを利用できないか、更新する必要があります。 | Play 開発者サービスをインストールまたは更新するようにユーザーに依頼します。 |
PLAY_SERVICES_VERSION_OUTDATED |
Play 開発者サービスを更新する必要があります。 | Google Play 開発者サービスを更新するようにユーザーに依頼します。 |
TOO_MANY_REQUESTS |
呼び出し元アプリからこの API へのリクエスト数が多すぎるため、スロットリングが行われています。 | 指数バックオフで再試行します。 |
GOOGLE_SERVER_UNAVAILABLE |
Google サーバーの不明な内部エラーです。 | 指数バックオフで再試行します。 |
INTERNAL_ERROR |
不明な内部エラーです。 | 指数バックオフで再試行します。 |
NONCE_TOO_SHORT |
ノンスの長さが短すぎます。ノンスは、16 バイト以上(Base64 エンコード前)でなければなりません。 | ノンスを長くして再試行します。 |
NONCE_TOO_LONG |
ノンスの長さが長すぎます。ノンスは、500 バイト未満(Base64 エンコード前)でなければなりません。 | ノンスを短くして再試行します。 |
NONCE_IS_NOT_BASE64 |
ノンスが「Base64、ウェブセーフ、ラップなし」形式ではありません。 | 正しいノンス形式で再試行します。 |
CLOUD_PROJECT_NUMBER_IS_INVALID |
指定された Cloud プロジェクト番号は無効です。 | Play Integrity API が有効になっている Cloud プロジェクトの Cloud プロジェクト番号を使用してください。 |
APP_UID_MISMATCH |
呼び出し元アプリの UID(ユーザー ID)が Package Manager の UID と一致しません。 | なんらかの問題が発生しており、攻撃の可能性もあります。対応手順はありません。 |
ネイティブ固有のエラーコード
ネイティブのエラーコードの前には、名称の競合を避けるため、INTEGRITY_ 接頭辞が付加されています。ネイティブ API には、上記のエラーコードとは別に、次のエラーコードもあります。
エラーコード | 説明 | 対応手順 |
---|---|---|
INTEGRITY_INITIALIZATION_NEEDED |
IntegrityManager が初期化されていません。 | 最初に IntegrityManager_init() を呼び出します。 |
INTEGRITY_INITIALIZATION_FAILED |
Integrity API の初期化中にエラーが発生しました。 | 指数バックオフで再試行します。バグの報告を検討してください。 |
INTEGRITY_INVALID_ARGUMENT |
Integrity API に無効な引数が渡されました。 | 正しい引数で再試行します。 |