【发布时间】:2016-03-10 17:59:02
【问题描述】:
使用https://github.com/android-pay/androidpay-quickstart 试用 Android Pay。 以下是我通过示例中的默认 Google 钱包实现为 Android 支付所做的小改动。
在我的设备中安装了最新版本 (8.4.89) 的 Google Play 服务
-
将 build.gradle 文件中的依赖项更改为使用 8.3 版本
编译'com.google.android.gms:play-services-wallet:8.3.0'
在我的设备上,从 Play 商店下载了“Android Pay”应用,并成功添加了一张支持的银行卡。
和
WalletFragmentStyle walletFragmentStyle = new WalletFragmentStyle()
.setBuyButtonText(BuyButtonText.BUY_WITH_GOOGLE)
.setBuyButtonAppearance(WalletFragmentStyle.BuyButtonAppearance.ANDROID_PAY_LIGHT)
.setMaskedWalletDetailsLogoImageType(WalletFragmentStyle.LogoImageType.ANDROID_PAY)
.setBuyButtonWidth(Dimension.MATCH_PARENT);
通过这样做,我可以在 CheckOutActivity 屏幕中获得 Android Pay 徽标,类似于https://developers.google.com/android-pay/payment-flows 中支付流程部分下的第一张图片。但是当我点击“Buy With Android(logo) Pay”时,我收到了错误代码405。根据https://developers.google.com/android-pay/best-practices 中的“无效的签名密钥指纹”部分,这通常发生在开发中的应用程序从沙盒环境切换到生产环境之后。
我已确保在代码中将环境设置为 TEST (WalletConstants.ENVIRONMENT_TEST),如下所示
WalletFragmentOptions walletFragmentOptions = WalletFragmentOptions.newBuilder()
.setEnvironment(WalletConstants.ENVIRONMENT_TEST)
.setFragmentStyle(walletFragmentStyle)
.setTheme(WalletConstants.THEME_LIGHT)
.setMode(WalletFragmentMode.BUY_BUTTON)
.build();
请注意,我尚未在 Play 商店中发布此应用程序,并且我仅在本地盒子中尝试并且不希望对示例应用程序进行预授权。因此,我没有按照https://developers.google.com/android-pay/preauth 中提到的步骤进行操作。因此,我无法验证“提供给 Google 的指纹与用于签署 Android 应用程序的密钥的指纹相匹配”,如https://developers.google.com/android-pay/best-practices
中的“无效的签名密钥指纹”部分所述不确定我犯了什么错误或错过了成功运行它的必要步骤。任何帮助都将不胜感激,因为我热衷于将其展示为 POC 并在我们的生产应用程序中实现它。
【问题讨论】:
-
你解决了吗..??以及如何。??
标签: android android-pay