デフォルトでは、Google ウォレットは、実際の ID が使われる本番環境モードで動作します。サンドボックス モードで動作するように Google ウォレット を再構成できます。リクエストは Google のサンドボックス環境に転送されます。
開発中と本番環境移行前のテストでは、サンドボックス モードを使用することをおすすめします。準備ができたら、デバイスを本番環境モードに戻すことができます。
サンドボックス環境の稼働時間
サンドボックス環境には、本番環境のような稼働時間に関する SLA はありません。サンドボックス環境の停止が原因と思われるエラーが発生した場合は、Google に連絡する前に、1 営業日(米国時間)お待ちください。通常、その期間内に自動的に復旧します。 ダウンタイムが発生する可能性があるため、重要なリリースプロセスをサンドボックス環境に依存するように設計しないでください。
Android デバイスでサンドボックス モードを有効または無効にする
TapAndPay 環境設定を使用して、サンドボックス環境モードを有効化できます。本番環境 モードに戻るには、上記と同じ手順を行い、サンドボックスではなく本番環境を選択します。
TapAndPay 環境設定を使用する
サンドボックス モードを有効にするには、次の手順を行います。
- 設定 アプリを開きます。
- 画面の一番上にあるお使いの Google アカウント / プロフィール写真 をタップします( 名前と「Google サービスと設定」が表示されます)。
- プロフィールを選択するオプションが表示されたら、プロフィールを選択して [すべてのサービス] をタップします。
- [その他] のカテゴリまでスクロールし、[TapAndPay Environment] をタップします。 [TapAndPay Environment] が表示されない場合は、デバイスを再起動して、手順 1 からやり直してください。
- プルダウン メニューをタップして、[SANDBOX] を選択します。
- 環境設定が変更されたことを通知する次のダイアログが表示されます。[OK] をタップして、デバイスを再起動します。
Google ウォレット環境を同期する
再起動後に Google ウォレットを開くと、次のダイアログが表示される場合があります。この場合は、Google ウォレットを強制停止して再度開く必要があります。
Wear OS デバイスでサンドボックス モードを有効または無効にする
接続された Wear OS デバイスでサンドボックス モードを有効にするには、次の 例に示すように、空のファイルを追加して再起動します。
adb shell touch /sdcard/Download/android_pay_env_override_sandboxadb reboot
接続されている Wear OS デバイスで本番環境モードに戻すには、次の例に示すように、ファイルを削除してデバイスを再起動します 。
adb shell rm /sdcard/Download/android_pay_env_override_sandboxadb reboot
Android デバイスがサンドボックス環境モードか本番環境モードかを確認する
Android デバイスがサンドボックス モードか本番環境モードかを確認するには、次の手順を実行します
- Google ウォレット アプリ を開きます。
- 右上のプロフィール写真またはアカウント > [ウォレットの設定] をタップします。
- ページの下部までスクロールします。「サンドボックス」という確認メッセージが表示された場合は、 サンドボックスで動作するように構成されています。メッセージが表示されない場合は、本番環境で動作するように構成されています。
デバイスによっては、Google 設定に Google ウォレットが表示されません。Google ウォレットの設定にアクセスするには、次のコマンドで adb を使用する必要があります。
adb shell am start -n com.google.android.gms/com.google.android.gms.tapandpay.settings.TapAndPaySettingsActivity
サンドボックスで署名付きリクエストをテストする
独自の本番環境キーを登録せずにサンドボックス環境で署名付きリクエストをテストするには、次のテストキーペアを使用します。これらのキーは、サンドボックス環境で事前に信頼されています。
テストキー
秘密鍵(PEM):
-----BEGIN PRIVATE KEY----- MIGHAgEAMBMGByqGSM49AgEGCCqGSM49AwEHBG0wawIBAQQggRmIZIHQhXcYIeZ7 KSqS/WwJrsOetdI8ZE4HG0fd+3uhRANCAAR3GR6mdt/NOErO7+XtKqo7orgXWPMI jEQDeE1PP4KWXTBAhuewPvF8uOiYakz5Jqd1kEFKfiecZEZRrLnC7U+e -----END PRIVATE KEY-----
証明書利用者メタデータ(Base64url CBOR):
2BhY56Juc2NoZW1hX3ZlcnNpb25idjFnZGlzcGxheaNsZGlzcGxheV9uYW1leBhURVNUIFVTRSBPTkxZIFNhbmRib3ggUlBobG9nb191cml4YWh0dHBzOi8vZm9udHMuZ3N0YXRpYy5jb20vcy9pL3Byb2R1Y3Rsb2dvcy9nb29nbGVnL3Y2L3dlYi02NGRwL2xvZ29fZ29vZ2xlZ19jb2xvcl8xeF93ZWJfNjRkcC5wbmdycHJpdmFjeV9wb2xpY3lfdXJpeCNodHRwczovL3BvbGljaWVzLmdvb2dsZS5jb20vcHJpdmFjeQ
証明書利用者メタデータ(CBOR ダンプ):
#24# .bstr
{
"schema_version": "v1",
"display": {
"display_name": "TEST USE ONLY Sandbox RP",
"logo_uri": "https://fonts.gstatic.com/s/i/productlogos/googleg/v6/web-64dp/logo_googleg_color_1x_web_64dp.png",
"privacy_policy_uri": "https://policies.google.com/privacy"
}
}公開証明書(PEM):
Certificate: Data: Version: 3 (0x2) Serial Number: 97:99:aa:8b:09:93:5a:20:c1:8b:27:6c:e2:da:91:97:f2:b7:79:8d Signature Algorithm: ecdsa-with-SHA256 Issuer: O=Google, OU=Wallet, CN=TEST USE ONLY Sandbox RP Validity Not Before: Jun 2 00:39:54 2026 GMT Not After : Jun 2 00:39:54 2027 GMT Subject: O=Google, OU=Wallet, CN=TEST USE ONLY Sandbox RP Subject Public Key Info: Public Key Algorithm: id-ecPublicKey Public-Key: (256 bit) pub: 04:77:19:1e:a6:76:df:cd:38:4a:ce:ef:e5:ed:2a: aa:3b:a2:b8:17:58:f3:08:8c:44:03:78:4d:4f:3f: 82:96:5d:30:40:86:e7:b0:3e:f1:7c:b8:e8:98:6a: 4c:f9:26:a7:75:90:41:4a:7e:27:9c:64:46:51:ac: b9:c2:ed:4f:9e ASN1 OID: prime256v1 NIST CURVE: P-256 X509v3 extensions: X509v3 Subject Key Identifier: 29:CA:DA:07:9B:1F:68:FA:80:01:E1:68:E3:38:E8:5A:5C:28:B1:6A X509v3 Authority Key Identifier: 29:CA:DA:07:9B:1F:68:FA:80:01:E1:68:E3:38:E8:5A:5C:28:B1:6A X509v3 Basic Constraints: critical CA:TRUE 1.3.6.1.4.1.11129.10.1: . ...?..!H.Z\j...uT2. .u.:.O.... 0 Signature Algorithm: ecdsa-with-SHA256 Signature Value: 30:46:02:21:00:91:94:fa:b9:85:82:92:bd:6a:98:44:73:ec: 30:26:1f:92:01:8f:5b:06:d7:8f:21:34:dc:76:f0:89:3c:04: 8c:02:21:00:ae:3e:9d:46:99:bd:63:7a:cc:59:30:66:48:d0: 75:cc:c9:82:07:ca:39:f1:f0:df:2b:07:7b:32:b9:5b:3f:0a -----BEGIN CERTIFICATE----- MIICFDCCAbmgAwIBAgIVAJeZqosJk1ogwYsnbOLakZfyt3mNMAoGCCqGSM49BAMC MEUxDzANBgNVBAoMBkdvb2dsZTEPMA0GA1UECwwGV2FsbGV0MSEwHwYDVQQDDBhU RVNUIFVTRSBPTkxZIFNhbmRib3ggUlAwHhcNMjYwNjAyMDAzOTU0WhcNMjcwNjAy MDAzOTU0WjBFMQ8wDQYDVQQKDAZHb29nbGUxDzANBgNVBAsMBldhbGxldDEhMB8G A1UEAwwYVEVTVCBVU0UgT05MWSBTYW5kYm94IFJQMFkwEwYHKoZIzj0CAQYIKoZI zj0DAQcDQgAEdxkepnbfzThKzu/l7SqqO6K4F1jzCIxEA3hNTz+Cll0wQIbnsD7x fLjomGpM+SandZBBSn4nnGRGUay5wu1PnqOBhTCBgjAdBgNVHQ4EFgQUKcraB5sf aPqAAeFo4zjoWlwosWowHwYDVR0jBBgwFoAUKcraB5sfaPqAAeFo4zjoWlwosWow DwYDVR0TAQH/BAUwAwEB/zAvBgkrBgEEAdZ5CgEEIgQg5taUP70bIUiJWlxqkwYP dVQyoyCvdaw62E8u4ASBIDAwCgYIKoZIzj0EAwIDSQAwRgIhAJGU+rmFgpK9aphE c+wwJh+SAY9bBtePITTcdvCJPASMAiEArj6dRpm9Y3rMWTBmSNB1zMmCB8o58fDf Kwd7MrlbPwo= -----END CERTIFICATE-----
手順
- テスト用の秘密鍵を使用して、リクエスト(JWS)に署名します。
- リクエストの
x5cヘッダーにテスト用の公開証明書を埋め込みます。 client_idをこの証明書のx509_hashに設定します。ハッシュの計算方法については、オンラインでの承認 - 署名付きリクエストをご覧ください。