تتضمّن com.google.android.gms.wallet documentation مستندات كاملة للمكتبة في إصدارات متعددة من Google Pay API. في ما يلي ملخّص للعناصر والطرق الأكثر ملاءمةً لأحدث إصدار من Google Pay API: الإصدار 2.0
محفظة Google
أنشئ PaymentsClient لبيئة اختبار أو بيئة تشغيل فعلي.
مثال
mPaymentsClient = Wallet.getPaymentsClient( this, new Wallet.WalletOptions.Builder() .setEnvironment(WalletConstants.ENVIRONMENT_TEST) .build() );
PaymentsClient
برنامج للتفاعل مع واجهات Google Pay API
isReadyToPay(IsReadyToPayRequest)
استخدِم طريقة isReadyToPay(IsReadyToPayRequest) لتحديد قدرة المستخدم على
إرجاع طريقة دفع من Google Pay API.
إذا كان الجهاز متوافقًا مع Google Pay، وكان المستخدم قد حفظ طريقة دفع أو يمكنه إضافة طريقة دفع، ستعرض الدالة IsReadyToPay القيمة true. لتحديد ما إذا كان المستخدم قد حفظ طريقة دفع في Google Pay، اضبط IsReadyToPayRequest.existingPaymentMethodRequired على true.
loadPaymentData(PaymentDataRequest)
عرض صفحة دفع في Google Pay تتيح اختيار طريقة دفع ومَعلمات تم ضبطها اختياريًا
IsReadyToPayRequest
أنشئ عنصر Java من النوع IsReadyToPayRequest مناسبًا للاستخدام مع PaymentsClient.isReadyToPay().
fromJson(java.lang.String)
يمكنك إنشاء عنصر Java من النوع IsReadyToPayRequest من سلسلة بتنسيق JSON. اطّلِع على
مرجع عنصر IsReadyToPayRequest
لمعرفة البنية المتوقّعة للسلسلة المقدَّمة بتنسيق JSON.
PaymentDataRequest
أنشئ كائن Java من النوع PaymentDataRequest مناسبًا للاستخدام مع PaymentsClient.loadPaymentData.
fromJson(java.lang.String)
يمكنك إنشاء عنصر Java من النوع PaymentDataRequest من سلسلة بتنسيق JSON. اطّلِع على
مرجع عنصر PaymentDataRequest
لمعرفة البنية المتوقّعة للسلسلة المقدَّمة بتنسيق JSON.
PaymentData
تعامَل مع ردّ بتنسيق JSON من Google Pay API لاستخدامه في تطبيقك.
toJson()
إخراج ردّ من واجهة برمجة التطبيقات Google Pay كسلسلة بتنسيق JSON اطّلِع على مرجع عنصر PaymentData لمزيد من المعلومات حول بنية عنصر JSON.
PayButton
public void initialize(ButtonOption buttonOptions)
تُستخدَم هذه الطريقة لتهيئة زر الدفع في Google Pay المصمَّم وفقًا لأحدث هوية بصرية لـ Google Pay.
الوسيطات
| الاسم | الوصف |
|---|---|
buttonOptions |
عنصر يضبط زر الدفع في Google Pay يُرجى الاطّلاع على ButtonOptions لمعرفة السمات القابلة للضبط. |
مثال: إعداد زر الدفع باستخدام إعدادات مخصّصة:
PayButton googlePayPaymentButton = layoutBinding.googlePayPaymentButton; JSONArray paymentMethods = new JSONArray().put(getBaseCardPaymentMethod()); googlePayPaymentButton.initialize( ButtonOptions.newBuilder() .setButtonTheme(ButtonConstants.ButtonTheme.DARK) .setButtonType(ButtonConstants.ButtonType.BUY) .setCornerRadius(100) .setAllowedPaymentMethods(paymentMethods.toString()) .build() );
public void setVisibility(View view)
تحدّد طريقة الراحة مستوى ظهور زر الدفع.
الوسيطات
| الاسم | الوصف |
|---|---|
View |
يضبط يؤدي الخيار |
مثال:
payButton.setVisibility(View.VISIBLE);
public void setOnClickListener(View.OnClickListener listener)
يتم استدعاء الطريقة عندما ينقر المستخدم على زر الدفع في Google Pay.
الوسيطات
| الاسم | الوصف |
|---|---|
listener |
هي دالة ردّ نداء لمتتبِّع الأحداث يتم استدعاؤها عند إرسال حدث ناتج عن النقر إلى زر الدفع في Google Pay. |
BasePaymentDataCallbacksService
فئة الخدمة الأساسية التي تستضيف عمليات استدعاء بيانات الدفع التي تبدأها "خدمات Google Play"
ضمن مسار PaymentsClient.loadPaymentData(PaymentDataRequest).
يمكنك توسيع نطاق هذه الخدمة في تطبيقك والإعلان عنها في AndroidManifest.xml باستخدام إذن com.google.android.gms.permission.BIND_PAYMENTS_CALLBACK_SERVICE وفلتر الأهداف لـ com.google.android.gms.wallet.callback.PAYMENT_DATA_CALLBACKS.
createPaymentDataCallbacks()
تعرض هذه الدالة تنفيذًا لـ BasePaymentDataCallbacks
للتعامل مع أحداث معاودة الاتصال الواردة. يتم استدعاؤها مرة واحدة لكل حدث استدعاء.
BasePaymentDataCallbacks
صنف أساسي مجرّد يحتوي على معالجات رد الاتصال لبيانات الدفع التي ينفّذها التاجر لإتاحة تعديلات الأسعار الديناميكية وتفويض الدفع.
onPaymentDataChanged(intermediatePaymentData, onCompleteListener)
تعالج هذه الطريقة تغييرات بيانات الدفع في صفحة الدفع، مثل عنوان الشحن وخيارات الشحن.
الوسيطات
مرحبًا| الاسم | النوع | الوصف |
|---|---|---|
intermediatePaymentData |
IntermediatePaymentData |
عنصر يحتوي على العنوان المحدّد وخيار الشحن في
نموذج الدفع لمعرفة التفاصيل، يُرجى الاطّلاع على IntermediatePaymentData. |
onCompleteListener |
OnCompleteListener<PaymentDataRequestUpdate> |
مستمع لحلّ المشاكل المتعلّقة بمعلومات المعاملات المعدَّلة وخيارات الشحن وأخطاء بيانات الدفع مرِّر مثيل
PaymentDataRequestUpdate إلى complete(). |
مثال
override fun onPaymentDataChanged( intermediatePaymentData: IntermediatePaymentData, onCompleteListener: OnCompleteListener<PaymentDataRequestUpdate> ) { val paymentDataRequestUpdateJson = handlePaymentDataChanged(intermediatePaymentData.toJson()) val update = PaymentDataRequestUpdate.fromJson(paymentDataRequestUpdateJson.toString()) onCompleteListener.complete(update) }
onPaymentAuthorized(paymentData, onCompleteListener)
يتم استدعاء هذه الطريقة عندما يتم اعتماد دفعة في صفحة الدفع.
الوسيطات
| الاسم | النوع | الوصف |
|---|---|---|
paymentData |
PaymentData |
عنصر يحتوي على بيانات المتسوّق المطلوبة لمعرفة التفاصيل، يُرجى الاطّلاع على PaymentData. |
onCompleteListener |
OnCompleteListener<PaymentAuthorizationResult> |
مستمع لحلّ مشكلة نتيجة التفويض مرِّر مثيل
PaymentAuthorizationResult إلى complete(). |
مثال
override fun onPaymentAuthorized( paymentData: PaymentData, onCompleteListener: OnCompleteListener<PaymentAuthorizationResult> ) { val paymentAuthorizationResultJson = handlePaymentAuthorized(paymentData.toJson()) val result = PaymentAuthorizationResult.fromJson(paymentAuthorizationResultJson.toString()) onCompleteListener.complete(result) }
IntermediatePaymentData
تعالِج بيانات عمليات الاستدعاء الوسيطة التي يتم تمريرها إلى BasePaymentDataCallbacks.onPaymentDataChanged.
toJson()
يتم إخراج بيانات طلب معاودة الاتصال كسلسلة بتنسيق JSON. اطّلِع على مرجع عنصر IntermediatePaymentData لمزيد من المعلومات حول بنية عنصر JSON.
getLastSavedState()
تعرض هذه الدالة Bundle الذي يحتوي على الحالة المحفوظة أثناء تكرار دالة رد النداء السابقة.
PaymentDataRequestUpdate
أنشئ عنصر Java من النوع PaymentDataRequestUpdate لعرضه في BasePaymentDataCallbacks.onPaymentDataChanged.
fromJson(java.lang.String)
يمكنك إنشاء عنصر Java من النوع PaymentDataRequestUpdate من سلسلة بتنسيق JSON. اطّلِع على مرجع عنصر PaymentDataRequestUpdate لمعرفة البنية المتوقّعة للسلسلة المقدَّمة بتنسيق JSON.
withUpdatedSavedState(Bundle)
يتم إرفاق حالة معدَّلة Bundle للاحتفاظ بها بين عمليات استدعاء دالة الاستدعاء.
PaymentAuthorizationResult
أنشئ عنصر Java من النوع PaymentAuthorizationResult لعرضه في BasePaymentDataCallbacks.onPaymentAuthorized.
fromJson(java.lang.String)
يمكنك إنشاء عنصر Java من النوع PaymentAuthorizationResult من سلسلة بتنسيق JSON. اطّلِع على مرجع عنصر الاستجابة PaymentAuthorizationResult لمعرفة البنية المتوقّعة للسلسلة المقدَّمة بتنسيق JSON.