ビジネスによっては、WebView を使用してウェブ チェックアウト プロセスをモバイル アプリケーションに埋め込む必要があります。このガイドでは、Google Pay ウェブ統合を完了した後、WebView で Google Pay をサポートするために必要な手順について説明します。
ユーザー デバイスの要件
- Google Play 開発者サービス バージョン 25.18.30 以降
- Chrome 用 Android WebView バージョン 137 以降
必要なアプリの変更
ウェブ チェックアウト プロセスが Android WebView に埋め込まれている場合、Payment Request API を使用して Google Pay シートを起動します。デフォルトでは、WebView で Payment Request API は無効になっています。アプリのコードに次の変更を加える必要があります。
ビルドの依存関係を追加(または更新)します。
Groovy
dependencies { implementation 'androidx.webkit:webkit:1.14.0' }
Kotlin
dependencies { implementation("androidx.webkit:webkit:1.14.0") }
バージョン カタログ
[versions] webkit = "1.14.0" [libraries] androidx-ktx = { group = "androidx.webkit", name = "webkit", version.ref = "webkit" }
AndroidManifest.xml に次の <queries> タグを追加します。
<queries> <intent> <action android:name="org.chromium.intent.action.PAY"/> </intent> <intent> <action android:name="org.chromium.intent.action.IS_READY_TO_PAY"/> </intent> <intent> <action android:name="org.chromium.intent.action.UPDATE_PAYMENT_DETAILS"/> </intent> </queries>
アプリで使用する WebView で Payment Request API を有効にします。
使用しているコードに正しいインポート文を使用していることを確認してください。
Kotlin
import android.webkit.WebSettings; import android.webkit.WebView; import androidx.webkit.WebSettingsCompat; import androidx.webkit.WebViewFeature; AndroidView( factory = { // Update WebView settings to allow JavaScript and payment request settings.javaScriptEnabled = true WebView(it).apply { if (WebViewFeature.isFeatureSupported( WebViewFeature.PAYMENT_REQUEST)) { WebSettingsCompat.setPaymentRequestEnabled(settings, true); } } }, update = {it.loadUrl(url) } )
Java
import android.webkit.WebSettings; import android.webkit.WebView; import androidx.webkit.WebSettingsCompat; import androidx.webkit.WebViewFeature; WebView webView = findViewById(R.id.webview); WebSettings webSettings = webView.getSettings(); // Update WebView settings to allow JavaScript and payment request webSettings.setJavaScriptEnabled(true); if (WebViewFeature.isFeatureSupported( WebViewFeature.PAYMENT_REQUEST)) { WebSettingsCompat.setPaymentRequestEnabled(webSettings, true); }
統合を公開する
アプリが Android WebView 内で Google Pay を使用できるようにするには、 統合を公開するガイドの手順を完了する必要があります。