在GFW和google拐弯抹角的文档的关照下,调试googlePlay的登录和充值花了好多时间,分享一下遇到的问题和解决方法
1.充值测试手机环境
如果能登录play store,也绑定了visa/master信用卡,但是只能见到免费游戏和APP,请寻找一个境外ip的vpn……嗯,ip是重点。
直到能看到收费项目,就可以开始测试了,在这之前,如果进行iab的初始化,大概会报
Error checking for billing v3 support
==============================================================
2.添加测试账号
登录play game services需要在这里的“添加测试人员”加入测试账号:
也可以直接加入一个群组:
充值测试需要在这里的“许可测试”加:
==============================================================
3.各种报错
================================
In-app billing error: Unable to buy item, Error response: 7:Item Already Owned
这个问题源于iab的流程:
http://developer.android.com/google/play/billing/api.html
一个商品支付完成后,需要被消费掉才能继续购买,所以参照例子在QueryInventoryFinishedListener和OnIabPurchaseFinishedListener适当的地方调用IabHelper的consumeAsync方法
================================
Error consuming response: 6:Error
加完consumeAsync我就遇到这个报错,消费失败,隐约记得这个报错是跟测试环境有关,但是搜半天搜不到解决办法,而且也无法继续测试支付了,就放着没管,时间是周五,结果周一回来打开手机居然就成功了,嗯,隐约记得上一次也好像是这样……好吧……google好像什么地方都有缓存,改个什么都得等半天才生效
================================
Can't start async operation (launchPurchaseFlow) because another async operation(launchPurchaseFlow) is in progress
这是我一次支付完成之后,想要进行第二次支付报的错,大概就是第一次的支付没有结束云云,其实就是IabHelper的状态没有改变,支付完成之后没有调flagEndAsync()这个方法,后来发现是粗心了,在例子的MainActivity上,有这么一段代码
@Override
protected void onActivityResult(int requestCode, int resultCode, Intent data) {
Log.d(TAG, "onActivityResult(" + requestCode + "," + resultCode + "," + data);
if (mHelper == null) return;
// Pass on the activity result to the helper for handling
if (!mHelper.handleActivityResult(requestCode, resultCode, data)) {
// not handled, so handle it ourselves (here's where you'd
// perform any handling of activity results not related to in-app
// billing...
super.onActivityResult(requestCode, resultCode, data);
}
else {
Log.d(TAG, "onActivityResult handled by IABUtil.");
}
}
里面的注释写得很明白了,需要在onActivityResult调一下IabHelper的handleActivityResult,里面就有一个操作
// end of async purchase operation that started on launchPurchaseFlow
flagEndAsync();
================================
Unable to retrieve application xxxxxx from network
BasicNetwork.performRequest: Unexpected response code 401 for https://www.googleapis.com/games/v1/players/me?language=zh_CN
There is no linked app associated with this client ID.
Application ID xxxxxxx is not associated with package xx.xx.xx. Check the application ID in your manifest.
这都是使用非测试人员登录googlePlay出现的报错,或者play services没有打开alpha/beta测试人员的开关,参照第2点加入测试人员即可
================================
Access Not Configured. Please use Google Developers Console to activate the API for your project.
去到
https://console.developers.google.com/project
点开“APIs & auth”->"Credentials"->点击项目名
在
Signing-certificate fingerprint
填入keystore的SHA1的值
5. 参考文档
G+登录
https://developers.google.com/identity/sign-in/android/
play game services
https://developers.google.com/games/services/android/quickstart
- 大小: 113.6 KB
- 大小: 27.8 KB
- 大小: 62.8 KB
分享到:
相关推荐
本文将详细介绍如何接入Google Play结算库V2.0.3版本,并实现支付流程,以及调用支付的封装。 首先,我们需要了解Google Play结算库的主要功能。这个库允许开发者在自己的应用中添加付费内容、订阅服务或应用内购买...
项目接入前自己写的Demo,在手机上跑过没有问题,才接入到项目中, 各位可以放心使用。源码中没有包含说明文档,百度上面有很多博客文档查看。可以保证下载下来可直接打包运行。Unity版本:Unity2018.4.10 KeyStore...
谷歌商店 接入应用内评价demo,找了一遍CSDN没找到自己实现了一个 博客文章链接:https://blog.csdn.net/t1446242775/article/details/109256073
谷歌Play服务(Google Play Services)是Android操作系统中的一个核心组件,它为开发者提供了与Google服务集成的API,包括Google Maps、Google+、Google Drive、Firebase等。这些服务使得应用程序能够利用谷歌的基础...
国内Google play game service排行榜的例子很少,所以我上传这个例子供Cocos2d-x、Android、Unity3D、Libgdx、Android Studio等开发者参考。 打开项目时,要先配置好Google play game service的框架。 总的来说...
以下是关于如何在Android Studio项目中接入AdMob的详细步骤和相关知识点: 1. **安装Google Play Services库** 首先,确保你的项目依赖于Google Play Services库,因为AdMob是其一部分。在`build.gradle`(Module:...
这个"googleplay支付demo"正是一个用于演示如何在应用中集成Google Play支付功能的实例,包含两个版本的实现:in-app-billing-v02和in-app-billing-v03。 首先,我们来了解一下`in-app-billing-v02`。这是早期的...
要想使用google play, google map等google应用,就必须安装Google Play Service,但Google Play Service有太多分支了,最近终于搞明白各个分支代表什么。 版本号最后三位(2104405-XYZ)分别表示Android版本,cpu的...
支付接口已经独立封装,只需要在自己的Activity 调用相关接口 1,在onCreate调用GooglePlayPurchase.instance().initGoogleData(this); 2,在onActivityResult调用GooglePlayPurchase.instance().onActivityResult...
我不是兔子安卓实现,google play接入,排行榜接入,分享功能实现
软件名称:Google Play services 软件版本:v6.5.96官方全机型7版 软件语言:中文 软件大小:33.0M 软件包名:com.google.android.gms 支持系统:Android 2.2+ 【软件介绍】 7版详情:管他那么多,升了再说 10:...
google play services jar包
Google Play 是 Android 操作系统的官方应用商店,提供了庞大的应用程序市场。要发布付费应用,开发者需要注册 Google Play 开发者账号,了解相关的注册流程、解封流程和付费应用发布流程极其重要。本文将详细介绍 ...
软件名称:Android原生市场:Google Play商店 APK名称:com.android.vending 最新版本:5.1.11 支持ROM:2.3及更高版本 界面语言:简体中文 软件大小:9.70 M 开发者:Google Inc. Google Play是谷歌官方的的应用...
【标题】"从Google Play上下载app的APK Downloader源码"涉及到的是一个用于从谷歌Play商店获取应用程序APK文件的工具。APK Downloader是Android应用开发领域的一个实用工具,它允许开发者或者普通用户在没有直接通过...
1. **设置Google Play Developer Console**:在Google Play Developer Console中创建一个新的应用,并启用Google Play Game Services。在这里,你需要配置游戏的元数据,如应用图标、成就和排行榜的设计。 2. **...
标题中的"Android-从GooglePlay商店下载apk文件"指的就是使用第三方工具或API来获取Google Play上的APK。Yerimo Min开发的Yalp Store(压缩包子文件的文件名称)是一个这样的工具,它允许用户以非官方的方式从Google...
【Google Play 游戏服务Demo】是Google提供的一款示例应用,用于展示如何在Android平台上集成和使用Google Play游戏服务。这个Demo包含了多种功能的实现,例如玩家登录、成就解锁、排行榜展示以及多人游戏等功能,...
在Android开发中,Google Play框架是构建用户友好的、功能丰富的应用的重要组成部分。这个框架集成了 DrawerLayout、ActionBar 和 TabIndicator 等组件,旨在提供类似Google Play应用商店的用户体验。下面将详细介绍...