Google登录和支付
最近在忙于接入各种SDK,遇到了各种坑。陷入坑的原因,有的在于SDK后台的配置原因,有的在于初期对于android studio不熟的原因。还有一些交流的原因。为防止再踏入此前踩过的坑,特在此记录一下。
我们是游戏开发游戏,接入sdk的各种后台是由发行公司提供,这是导致接入sdk工作缓慢的最主要原因之一。因为,sdk后台是我们不能控制的东西,同时sdk后台又是接入sdk工作中特别重要的一部分。
Google登录接入:
官方文档比较全面,对于熟悉android studio开发工具的人来说,可以较快接入。坑点:
(1)签名文件.keystore---->google-services.json文件,这一步要确认。google-services.json文件中可以看到packageName。
(2)packageName要与后台设置的一致,客户端涉及到packageName的地方有:主module的gralde.project中applicationId,主代码的package名字,androidManifest.xml中的packageName。
Google支付接入:
(1)需要后台上传测试包,记住测试包的versionCode,versionName。之后接入支付,测试时,需要设置为同样的值。
(2)这个阶段需要确定签名文件,签名文件不可更改。
(3)添加测试账号,并给测试账号发送邀请测试链接,重要!这个地方容易被忽略,添加完测试账号,一定要登录google测试账号,点击这个链接,成为测试人员,这样才能成为测试人员。
(4)配置商品id,google后台配置的商品id一定和游戏服务器的商品id一致,否则会报无法购买商品的错。
(5)google支付中,一件商品只能拥有一个,所以在商品购买成功后,需要调用消耗商品的接口,在google后台消耗掉,这样才能多次购买同一件商品。可能会出现的问题:某次支付请求,在google后台购买成功,但在游戏客户端因为各种原因没有调用消耗商品的接口,这样会导致无法再购买此次的商品,所以需要有补单逻辑。