בcom.google.android.gms.wallet documentation יש תיעוד מלא של הספריה בכמה גרסאות של Google Pay API. בהמשך מופיע סיכום של אובייקטים ושיטות שרלוונטיים במיוחד לגרסה האחרונה של Google Pay API: גרסה 2.0
Wallet
יצירת PaymentsClient לסביבת בדיקה או לסביבת ייצור.
דוגמה
mPaymentsClient = Wallet.getPaymentsClient( this, new Wallet.WalletOptions.Builder() .setEnvironment(WalletConstants.ENVIRONMENT_TEST) .build() );
PaymentsClient
לקוח ליצירת אינטראקציה עם Google Pay APIs.
isReadyToPay(IsReadyToPayRequest)
משתמשים ב-method isReadyToPay(IsReadyToPayRequest) כדי לקבוע אם למשתמש יש אפשרות להחזיר אמצעי תשלום מ-Google Pay API.
אם המכשיר תומך ב-Google Pay, והמשתמש כבר שמר אמצעי תשלום או יכול להוסיף אמצעי תשלום, IsReadyToPay מחזירה true. כדי לקבוע אם המשתמש כבר שמר אמצעי תשלום ב-Google Pay, צריך להגדיר את IsReadyToPayRequest.existingPaymentMethodRequired ל-true.
loadPaymentData(PaymentDataRequest)
הצגת גיליון תשלום של Google Pay שמאפשר בחירה של אמצעי תשלום ופרמטרים מוגדרים אופציונליים.
IsReadyToPayRequest
יוצרים אובייקט IsReadyToPayRequest Java שמתאים לשימוש ב-PaymentsClient.isReadyToPay().
fromJson(java.lang.String)
יוצרים אובייקט IsReadyToPayRequest Java ממחרוזת בפורמט JSON. בחומר העזר בנושא אובייקט IsReadyToPayRequest מוסבר מה המבנה הצפוי של המחרוזת בפורמט JSON.
PaymentDataRequest
יצירת אובייקט PaymentDataRequest Java שמתאים לשימוש ב-PaymentsClient.loadPaymentData.
fromJson(java.lang.String)
יוצרים אובייקט PaymentDataRequest Java ממחרוזת בפורמט JSON. במאמר בנושא אובייקט PaymentDataRequest מוסבר מה המבנה הצפוי של המחרוזת בפורמט JSON.
PaymentData
טיפול בתגובה בפורמט JSON מ-Google Pay API לשימוש באפליקציה.
toJson()
יצירת פלט של תגובה מ-Google Pay API כמחרוזת בפורמט JSON. מידע נוסף על המבנה של אובייקט JSON מופיע במאמר העזרה בנושא אובייקט PaymentData.
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 |
פונקציית קריאה חוזרת (callback) של רכיב event listener שמופעלת כשאירוע מסוג קליק מועבר ללחצן התשלום של Google Pay. |
BasePaymentDataCallbacksService
מחלקת שירות בסיסית שמארחת את הקריאות החוזרות (callback) של נתוני התשלום שהופעלו על ידי Google Play Services בתהליך PaymentsClient.loadPaymentData(PaymentDataRequest).
אפשר להרחיב את השירות הזה באפליקציה ולהצהיר עליו ב-AndroidManifest.xml עם ההרשאה com.google.android.gms.permission.BIND_PAYMENTS_CALLBACK_SERVICE ומסנן Intent ל-com.google.android.gms.wallet.callback.PAYMENT_DATA_CALLBACKS.
createPaymentDataCallbacks()
מחזירה הטמעה של BasePaymentDataCallbacks
כדי לטפל באירועי קריאה חוזרת נכנסים. הפונקציה מופעלת פעם אחת לכל אירוע של קריאה חוזרת.
BasePaymentDataCallbacks
מחלקת בסיס מופשטת שמכילה את מטפלי הקריאות החוזרות של נתוני התשלום שהוטמעו על ידי המוכר כדי לתמוך בעדכוני מחירים דינמיים ובאישור תשלום.
onPaymentDataChanged(intermediatePaymentData, onCompleteListener)
השיטה הזו מטפלת בשינויים בנתוני התשלום בדף התשלום, כמו כתובת למשלוח ואפשרויות משלוח.
ארגומנטים
| שם | סוג | תיאור |
|---|---|---|
intermediatePaymentData |
IntermediatePaymentData |
אובייקט שמכיל את הכתובת ואת אפשרות המשלוח שנבחרו בדף התשלום. פרטים נוספים זמינים במאמר IntermediatePaymentData. |
onCompleteListener |
OnCompleteListener<PaymentDataRequestUpdate> |
פונקציית callback שתקבל את פרטי העסקה המעודכנים, אפשרויות המשלוח ושגיאות בנתוני התשלום. מעבירים מופע של 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> |
פונקציית listener לפתרון הבעיה עם תוצאת ההרשאה. מעבירים מופע של 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. למידע נוסף על המבנה של אובייקט ה-JSON, אפשר לעיין במאמר העזרה בנושא אובייקט IntermediatePaymentData.
getLastSavedState()
הפונקציה מחזירה את Bundle שמכיל את המצב שנשמר במהלך האיטרציה הקודמת של הקריאה החוזרת.
PaymentDataRequestUpdate
יוצרים אובייקט PaymentDataRequestUpdate Java להחזרה ב-BasePaymentDataCallbacks.onPaymentDataChanged.
fromJson(java.lang.String)
יוצרים אובייקט PaymentDataRequestUpdate Java ממחרוזת בפורמט JSON. בהפניה לאובייקט PaymentDataRequestUpdate מוסבר מה המבנה הצפוי של המחרוזת בפורמט JSON.
withUpdatedSavedState(Bundle)
מצרף מצב מעודכן Bundle כדי לשמור אותו בין הפעלות של קריאות חוזרות.
PaymentAuthorizationResult
יוצרים אובייקט PaymentAuthorizationResult Java להחזרה ב-BasePaymentDataCallbacks.onPaymentAuthorized.
fromJson(java.lang.String)
יוצרים אובייקט PaymentAuthorizationResult Java ממחרוזת בפורמט JSON. במאמר הפניה לאובייקט התגובה PaymentAuthorizationResult מוסבר מה המבנה הצפוי של המחרוזת בפורמט JSON.