Android Pay - 完整电子钱包确认结果代码1和错误代码10

时间:2016-06-01 08:43:39

标签: android google-api google-play google-play-services android-pay

有一段时间,Android Pay运行良好。直到最近(5月底),我收到了以下错误。

我引用了公开的Android Pay教程。期间"产品结帐"当用户确认时,我看到请求代码1004和结果代码1 ,并调用以下内容:

public void onActivityResult(int requestCode, int resultCode, Intent data) {
  switch(requestCode) {
          case FullWalletConfirmationButtonFragment.REQUEST_CODE_RESOLVE_LOAD_FULL_WALLET:
                 Fragment fragment = getResultTargetFragment();
                 if (fragment != null) {
                     fragment.onActivityResult(requestCode, resultCode, data);

这将调用FullWalletConfirmationFragment:

public void onActivityResult(int requestCode, int resultCode, Intent data) {
    int errorCode = -1;
    if (data != null) {
        errorCode = data.getIntExtra(WalletConstants.EXTRA_ERROR_CODE, -1);
    }

 switch (requestCode) {
     case REQUEST_CODE_RESOLVE_LOAD_FULL_WALLET:
            switch (resultCode) {
                 case Activity.RESULT_OK:
                    break;
                 case Activity.RESULT_CANCELED:
                    break;
                default:
                    handleError(errorCode);
                    break;

resultCode的值为1,这对我来说很奇怪。这引用了 Activity.RESULT_FIRST_USER (1)。这到底是什么?无论如何,这会调用handleError(),其中错误代码为10

我不知道错误代码10是什么。查看 WalletConstants 类,错误代码10不存在。

任何帮助将不胜感激。这是我最新的环境:

compileSdkVersion 23
buildToolsVersion '23.0.2'
defaultConfig {
    minSdkVersion 14
    targetSdkVersion 21

**gradle**
google-services:3.0.0
com.google.android.gms:play-services:+  // Appears to reference 9.0.0 which became available in May

**wallet environment**
 I've tried Sandbox Environment, Strict Sandbox Environment, and Test Environment.

1 个答案:

答案 0 :(得分:0)

按照以下步骤配置您的应用以进行制作

  1. 完成整合路径后,download our Android
    Pay API checklist
    并针对它审核您的应用

  2. 如果您已启用预授权,generate a client ID for production(除非您已拥有现有客户端ID) 生产应用程序,在您的Android Pay集成之前发布)。 请注意,生产客户端ID是必需的,即使您是 之前为开发设置了客户端ID。

  3. 确保您的APK使用发布密钥签名,而不是 您在测试环境中使用的调试密钥。调试密钥不起作用 在生产环境中。

  4. 将WalletOptions环境参数设置为 WalletConstants.ENVIRONMENT_PRODUCTION。