הפניה ללקוח

ב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

View.VISIBLE מגדיר את לחצן התשלום כגלוי (ברירת מחדל).

View.GONE מסתיר את הלחצן מהמשתמשים.

דוגמה:

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.