Einige Unternehmen müssen ihren Web-Checkout-Prozess mithilfe einer WebView in ihre mobilen Anwendungen einbetten können. In dieser Anleitung werden die Schritte beschrieben, die erforderlich sind, um Google Pay in Ihrer WebView zu unterstützen, nachdem Sie die Google Pay-Webintegration abgeschlossen haben.
Anforderungen an Nutzergeräte
- Google Play-Dienste-Version 25.18.30 oder höher
- Android WebView für Chrome Version 137 oder höher
Erforderliche Änderungen an der App
Die Payment Request API wird verwendet, um das Google Pay-Sheet zu starten, wenn der Web-Checkout-Prozess in eine Android WebView eingebettet ist. Standardmäßig ist die Payment Request API für WebView deaktiviert. Folgende Änderungen am App-Code sind erforderlich:
Build-Abhängigkeit hinzufügen (oder aktualisieren):
Groovy
dependencies { implementation 'androidx.webkit:webkit:1.14.0' }
Kotlin
dependencies { implementation("androidx.webkit:webkit:1.14.0") }
Versionskatalog
[versions] webkit = "1.14.0" [libraries] androidx-ktx = { group = "androidx.webkit", name = "webkit", version.ref = "webkit" }
Fügen Sie Ihrer AndroidManifest.xml-Datei die folgenden <queries>-Tags hinzu:
<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>
Aktivieren Sie die Payment Request API für die WebView, die Sie in Ihrer App verwenden.
Achten Sie darauf, dass Sie die richtige Importanweisung für den verwendeten Code verwenden.
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); }
Integration veröffentlichen
Damit Ihre App Google Pay in Android WebView verwenden darf, müssen Sie die Anleitung zum Veröffentlichen Ihrer Integration durchlaufen.