راهنمای عیبیابی Android مسائل و سؤالات مربوط به موضوعات زیر را پوشش میدهد.
- برنامه درحالحاضر در محیط آزمایش اجرا میشود
- درخواست انجام نشد
- ثبتنام و دسترسی
- اعتبار درگاه
- بازرگانان مستقیم
- وبنمای Android
- CardInfo
برنامه درحالحاضر در محیط آزمایش اجرا میشود
کاربر ممکن است هنگام انتخاب کارت پرداخت از کادر گفتگوی جزئیات پرداخت، پیام زیر را ببیند:
برنامه درحالحاضر در محیط آزمایش اجرا میشود. تراکنشها منجر به کسر هزینه واقعی نمیشود
این خطا نشان میدهد که برنامه از
ENVIRONMENT_TEST
استفاده میکند و اطلاعات اعتباری پرداخت واقعی دریافت نمیکند، اما اطلاعات شخصی شامل
نشانی صورتحساب، شماره تلفن نشانی صورتحساب، نشانی ارسال، و نشانی ایمیل را درصورت درخواست دریافت میکند.
درخواست انجام نشد
رایجترین پیام خطا OR_BIBED_06 است. این پیام خطا همچنین
در واسط کاربر بهصورت کادر گفتگویی با نوشتار زیر نشان داده میشود:
درخواست ناموفق بود
مشکلی در یکپارچهسازی Google Pay فروشنده وجود دارد. لطفاً برای دریافت کمک با فروشنده تماس بگیرید یا با روش دیگری پرداخت کنید.
برای کسب اطلاعات بیشتر درباره این خطا، این مراحل را دنبال کنید:
- مطمئن شوید Android Debug Bridge (adb) در رایانهتان نصب شده باشد.
- مطمئن شوید اشکالزدایی USB در دستگاهتان فعال باشد. برای اطلاعات بیشتر، به عیبیابی برنامه مراجعه کنید.
- دستگاه Android خود را به رایانه متصل کنید یا شبیهساز را راهاندازی کنید.
فرمان زیر را در پایانه یا خط فرمان رایانهتان اجرا کنید:
adb logcat -s WalletMerchantError
پاسخ دلیل خطا را نشان میدهد. برای مثال، ممکن است این موارد را ببینید:
02-26 17:41:28.133 14593 14593 W WalletMerchantError: Error in loadPaymentData: This merchant profile does not have access to this feature.
اقدامی که باید برای حل مشکل انجام دهید به پیام خطا بستگی دارد.
اعتبار دروازه
ممکن است در مقطعی از ادغام خود با خطاهای زیر مربوط به اعتبار درگاه مواجه شوید. فهرست زیر چند توصیه مفید برای عیبیابی درصورت بروز این خطاها ارائه میدهد.
OR_BIBED_06دروازه ناشناس 'yourgateway'- درحالحاضر Google Pay API از مقدار دارایی
gatewayکه درtokenizationSpecificationمشخص کردهاید پشتیبانی نمیکند. برای کسب اطلاعات بیشتر درباره شناسه درگاه و فیلدهای مرتبط آن، مثلgatewayMerchantId، با درگاهتان تماس بگیرید. OR_BIBED_06از درگاه «نمونه» نمیتوان در حالت تولید استفاده کرد.- مقدار ویژگی درگاه نمونه فقط برای اهداف آزمایشی استفاده میشود و نمیتواند با مقدار پارامتر محیط
WalletOptionsکه رویWalletConstants.ENVIRONMENT_PRODUCTIONتنظیم شده است استفاده شود. برای کسب اطلاعات بیشتر درباره پارامترهایgatewayکه باید با «میانای برنامهسازی کاربردی Google Pay» استفاده کنید، با درگاهتان تماس بگیرید.
ثبتنام و دسترسی
ممکن است در مقطعی از ادغام خود با خطاهای زیر مربوط به ثبتنام و دسترسی مواجه شوید. فهرست زیر چند توصیه مفید برای عیبیابی درصورت بروز این خطاها ارائه میدهد.
-
OR_BIBED_07این API به کتابخانه خدمات Google Play نسخه ۸.۴ و بالاتر نیاز دارد - مطمئن شوید «خدمات Google Play» در دستگاهی که برنامه را اجرا میکند بهروز باشد.
OR_BIBED_07هیچ کلیدی برای این نمایه فروشنده پیدا نشد- باید کلید رمزگذاری عمومیتان را بااستفاده از
کنسول Pay و کیف پول Google در Google ثبت کنید تا
DIRECTtokenizationSpecificationtypeادغام را تکمیل کنید. OR_BIBED_07این نمایه فروشنده به این ویژگی دسترسی ندارد.- فرایند ثبت برنامه برای Google Pay API را تکمیل نکردهاید. برای اطلاعات بیشتر، درخواست دسترسی تولید را مرور کنید.
OR_BIBED_10این فروشنده در منطقهای است که Google Pay در آن پذیرفته نمیشود.- سرویس Google Pay در این منطقه دردسترس نیست. برای اطلاعات بیشتر، فهرست کشورهای پشتیبانیشده را ببینید
OR_BIBED_11این فروشنده ثبتنام برای استفاده از Google Pay API را تکمیل نکرده است. لطفاً برای تأیید به کنسول (https://pay.google.com/business/console) بروید.- فرایند ثبت برنامهتان را برای Google Pay API تکمیل نکردهاید. برای اطلاعات بیشتر، درخواست دسترسی تولید را مرور کنید.
OR_BIBED_12این یکپارچهسازی «میانای برنامهسازی کاربردی Google Pay» غیرفعال است. لطفاً برای اطلاعات بیشتر با ما تماس بگیرید (https://developers.google.com/pay/api/faq#how-to-get-support).- برای کسب اطلاعات بیشتر درباره مراحل لازم برای فعال کردن مجدد Google Pay API برای حسابتان، با ما تماس بگیرید.
OR_BIBED_13اثر انگشتهای کلید امضا {11:22:33:44:55:66:77:88:99:AA:BB:CC:DD:EE:FF:11:22:33:44:55} با سوابق ما برای این برنامه مطابقت ندارد.- فقط درصورتی میتوان از Google Pay API در حالت تولید استفاده کرد که APK با کلید امضای صحیح امضا شده باشد. برای اطلاعات بیشتر، به امضای برنامه مراجعه کنید.
بازرگانان مستقیم
ممکن است در نقطهای از ادغام با خطاهای زیر دررابطهبا بازرگان مستقیم مواجه شوید. فهرست زیر چند توصیه مفید برای عیبیابی درصورت بروز این خطاها ارائه میدهد.
- درستیسنجی امضا
- اگر
merchantIdاشتباه باشد، ممکن است با خطای درستیسنجی امضا مواجه شوید. این اتفاق میتواند در محیطTESTهنگام استفاده از کتابخانه Tink paymentmethodtoken رخ دهد. برای جلوگیری از این مشکل، YOUR_MERCHANT_ID را رویدر اینجا تنظیم کنید: .recipientId("merchant:YOUR_MERCHANT_ID")
- نمیتوان رمز نشانه را گشود
- اگر از کتابخانه Tink paymentmethodtoken برای رمزگشایی کردن رمز استفاده میکنید، به موارد زیر توجه کنید:
- مطمئن شوید که محیط پاسخ Google Pay API با محیط Tink مطابقت داشته باشد. برای
مثال، اگر پاسخ «میانای برنامهسازی کاربردی Google Pay» توسط
ENVIRONMENT_TESTبرگردانده شده باشد، Tink به محیط آزمایش برای رمزگشایی اشاره میکند. - پاسخ «میانای برنامهسازی کاربردی Google Pay» را قبلاز اینکه به Tink ارسال شود تغییر ندهید. مطمئن شوید که کل کد برگرداندهشده از پاسخ Google Pay API را ارسال میکنید. برای جزئیات بیشتر، یادداشت زیر را ببینید:
- تأیید کنید که کلید خصوصی مناسب مرتبط با کلید عمومیای که در Google ثبت کردهاید را دارید.
- تولید جفت کلید عمومی و خصوصی در ویندوز
- اگر از Windows استفاده میکنید و میخواهید مراحل ذکرشده در استفاده از OpenSSL برای تولید جفت کلید خصوصی و عمومی را دنبال کنید، مطمئن شوید که Cygwin را در دستگاهتان نصب کردهاید. این کار برای اجرای فرمانهای Linux لازم است.
وبنمای Android
OR_BIBED_15Google Pay بهدرستی بار نشد چون این «برنامه» از «وبنما» استفاده میکند. توسعهدهندگان نرمافزار باید دستورالعملها را دنبال کنند تا Google Pay در «وبنمای Android» فعال شود.- برای فعال کردن Google Pay API برای «وبنمای Android»، دستورالعملها را دنبال کنید.
CardInfo
- ویژگی CardInfo چیست؟
- Google Pay به مصرفکنندگان نشان میدهد که کارتی پشت دکمه پرداخت Google Pay وجود دارد، که هم شبکه نمانام کارت و هم چهار رقم آخر کارت را ارائه میکند.
- چرا ویژگی CardInfo در پیادهسازی من ارائه نمیشود؟
برای اینکه ویژگی CardInfo کار کند، شرایط زیر را لازم داریم:
- باید
createButtonAPI را پیادهسازی کنید. - باید
ButtonOptions.buttonTypeرا رویbuy،long، یاpayپیکربندی کنید. - کاربر باید روش پرداخت دردسترس داشته باشد، همانطور که توسط
CardParametersشیء شما تعریف شده است.
- باید