برخی از کسبوکارها نیاز دارند که بتوانند فرآیند پرداخت اینترنتی خود را با استفاده از WebView در برنامههای تلفن همراه خود جاسازی کنند. این راهنما شما را در مراحل لازم برای پشتیبانی از Google Pay در WebView پس از تکمیل ادغام Google Pay Web راهنمایی میکند.
الزامات دستگاه کاربر
- نسخه ۲۵.۱۸.۳۰ یا بالاتر سرویسهای گوگل پلی
- نمای وب اندروید برای کروم نسخه ۱۳۷ یا بالاتر
تغییرات مورد نیاز برنامه
API درخواست پرداخت برای راهاندازی برگه Google Pay هنگامی که فرآیند پرداخت وب در یک WebView اندروید تعبیه شده است، استفاده میشود. به طور پیشفرض API درخواست پرداخت برای WebView غیرفعال خواهد بود. تغییرات زیر در کد برنامه شما لازم است:
وابستگی ساخت را اضافه کنید (یا بهروزرسانی کنید):
گرووی
dependencies { implementation 'androidx.webkit:webkit:1.14.0' }
کاتلین
dependencies { implementation("androidx.webkit:webkit:1.14.0") }
کاتالوگ نسخه
[versions] webkit = "1.14.0" [libraries] androidx-ktx = { group = "androidx.webkit", name = "webkit", version.ref = "webkit" }
تگهای <queries> زیر را به AndroidManifest.xml خود اضافه کنید:
<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>
API درخواست پرداخت را برای WebView که در برنامه خود استفاده میکنید، فعال کنید.
مطمئن شوید که از عبارت import صحیح برای کدی که استفاده میکنید، استفاده میکنید.
کاتلین
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) } )
جاوا
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); }
ادغام خود را منتشر کنید
برای اینکه برنامه شما بتواند از Google Pay در Android WebView استفاده کند، باید راهنمای ادغام خود را منتشر کنید.