写在前面:

最近Google貌似又被全面封杀了,幸好在此之前,把Google play billing弄完了,现在写篇 博客来做下记录。这篇博客一是自己做个记录,二是帮助其他有需要的人。因为现在基本登不上Google开发者后台,所以有些东西就没有办法截图了,尽量争取讲的全面些。这个博客会分成两篇,第一篇主要讲准备工作(要准备的东西挺多),第二篇讲相关的代码接入。

准备工作:

既然是做Google 内支付,所以像android的开发环境肯定是配置好了的,这里就不做讲解了。

1.下载开发包。

通过Android SDK Manager下载Android SDK的extras部分,最好把红线标示的两个开发包都下载了,第一个是Google Play Service包,其中会包括Google Cloud Message,Google Wallet等和Google Play Service相关的文档。第二个是内支付的包,其中就有我们这次开发需要的文档,例子,配置文件等。p.s.我自己用的笔记本没有装Google Play Service,不要在意:).

当把包下载完后你可以在本地SDK中找到这两个包(根据自己SDK的路径来找),billing包在这里。

其中samples就是Google官方提供的示例工程,我们的支付会用到,第二个文件是一个应用内通信相关的文件,是需要添加到我们自己工程里的,下面会讲到。

和billing相关的文档在这个目录

v2可以跳过不看,我们现在要用v3支付,也就是版本3的支付(20150624追加更新:近日发现Google已升级支付版本到 了,有新的就建议大家用新的)。我建议是把这几个文档全部看一遍,这样可以让你心里对Google的这个支付有个大概的了解,看看这个支付是走的什么流程,用到了那些东西。虽然都是英文的,但是里面专业术语很少,我相信你花一个上午时间是可以看完的。其实我现在要讲的东西也是从这里看到的,所以如果你把这几个文档看懂了,也就可以不用看这篇博客了 :)

2.准备beta版APK

下载好上面的billing包后,第一,把IInAppBillingService.aidl这个文件加到你的工程里,添加方法很简单,在你的工程里建一个如下的包名com.android.vending.billing,再把这个aidl文件拷贝到里面,最后刷新一下你的工程就可以了,如果工程没有生成相关代码,可以执行下android update命令,update下你的工程。

<uses-permission android:name="com.android.vending.BILLING" />

第二,把上面这个权限添加到你工程的AndroidManifest.xml里(可以在工程里找到)。完成上面两步后,你的工程就有Google billing了(当然等你添加了支付代码后才算最后完成),在你的程序打包签名后,Google Play后台也会认可你的程序了,能够允许你在后台添加内购商品了.

在正式接入支付代码前,你可以先把这个apk上传到Google Play后台,这个APK就相当于你要发布的APK了,当然你不会真的发布它,这里要说的就是,这个上传的APK是需要签名的,而且包名以及签名要与你以后上传的正式APK保持一致。当然你也可以把支付相关的代码接入完毕后再上传后台。如何上传APK,在你登陆开发者后台后就知道怎么做了。需要注意的是这个包要上传为beta版,这样Google不会把它发布,但是可以激活APK的支付功能,这样我们就可以在本地装上APK测试支付了。

3.需要的账户

(1)去Google开发者后台申请账号,上传apk。 既然是要加Google支付了,就说明咱们的程序要上架Google Play了,所以开发者账号必须要有,相信你已经在开发者后台注册了账号了,如果还没有就去注册一个吧,因为我现在无法登陆开发者后台,所以注册账号这里就不讲了,你可以开vpn到Google开发者后台注册一个,顺便也要开通你的Google 钱包账户。

(2)测试账号添加。在这个文档里对于如何添加测试账户有详细的说明,这里不做赘述。测试账户就是一个可用的gmail账户,如果你的测试手机上登陆的是测试账户,当你测试购买Google billing时,Google是不会扣你钱的,这样你就可以免费测试你的应用内购买了。可以在后台添加多个测试账户。附加说明, 测试账号可以在后台里的设置界面添加。如下图示。先前遇见一个同学把邀请组测试当做测试账号了,那个只是你邀请别人来测试你的apk,而不是测试账号。

(3)设置应用内商品。设置应用商品前,你需要把你的beta版APK上传到Google Play后台.在这个文档有对在后台如何设置内购商品的详细说明。需要注意的是,你设置的商品是唯一的,商品名字不可以重复,也不可以重用。建议在测试阶段可以只设置一个测试用的商品就可以了,等你支付添加完毕后,就可以把所有的商品添加到后台了。

(4)public key。验证支付结果的一个key,很重要,程序里要用到,在文档里可以找到从哪里获得。下篇 会讲到怎么用,这里可以先提及一下,就是这个key最好放到服务器端。当然如果你做的是单机游戏,就考虑如何隐藏这个key了,不管怎么样,千万不要名文写在你的java代码里就好。

4.测试设备

要测试Google billing,你首先需要一个带有完整Google Play应用商店,Google Play Service的Android手机。国内手机厂商一般都把这两个程序删掉了,你需要重新下载安装,装上后能不能用,你就自行百度解决吧。个人推荐用Google亲儿子nexus系列的设备,如果没有的也可以使用魅族和小米的手机,这两个厂商倒是把Google服务保留了(赞一个)。然后你要有个vpn,必须能够翻出国门哦。因为你的应用程序添加了Google billing后,国内的Google Play商店是不会上架你的程序,当然在你后台选择发布地区时就选不到中国大陆这个选项:(。因而你用国内的网络是无法完成支付的,这时你就必须开vpn来测支付了。注意一点,如果你曾经用国内的网络使用过Google Play程序商店的话,就需要把Google Play程序的数据清空,否则即使你后来开vpn测试,Google Play还是会把你当做国内用户对待,切记,切记。

5.信用卡

测试支付必须要有个VISA信用卡账户,或者其他像万事达这样的信用卡账户即可。虽然用测试账户测试购买不扣费,但是信用卡账户在支付过程中还是要填的。如果你是在公司工作的话,就让你们公司给你提供个信用卡账户吧,如果是个人开发者,就用自己的吧。推荐有一部固定的手机来测支付,这个手机最好没有root,因为你要输入你的信用卡账户和密码的,起码要保证安全。

以上就是需要做的准备工作,这些东西可以在开发前做,也可以在开发完毕后做。没有多大区别,个人推荐在添加Google billing代码前,可以先把后台相关的准备好。其实以上所说的基本都是billing文档上的东西,所以还是推荐先把那几个文档看完,然后再动手添加代码。下篇讲代码的接入。

Google play billing(Google play 内支付) 上篇的更多相关文章

  1. Google play billing(Google play 内支付) 下篇

    开篇: 如billing开发文档所说,要在你的应用中实现In-app Billing只需要完成以下几步就可以了. 第一,把你上篇下载的AIDL文件添加到你的工程里,第二,把 <uses-perm ...

  2. Google play billing(Google play 内支付)

    准备工作 1. 通过Android SDK Manager下载extras中的Google Play services和Google Play Billing Library两个包. 2. 把下载的. ...

  3. SDK接入(2)之Android Google Play内支付(in-app Billing)接入

    SDK接入(2)之Android Google Play内支付(in-app Billing)接入 继上篇SDK接入(1)之Android Facebook SDK接入整理完Facebook接入流程之 ...

  4. Google In-App Billing 实现(内含Unity 实现经验)

    实现内购计费 傻逼目录   Adding the AIDL file Updating Your Manifest Creating a ServiceConnection Making In-app ...

  5. Google Adsense(Google网站联盟)广告申请指南

    Google AdSense 是一种获取收入的快速简便的方法,适合于各种规模的网站发布商.它可以在网站的内容网页上展示相关性较高的 Google 广告,并且这些广告不会过分夸张醒目.由于所展示的广告同 ...

  6. 应用内支付(IAP)可加入三方支付

    Windows Phone 放开政策 - 应用内支付(IAP)可加入三方支付   Windows Phone 应用商店在 今年(2013)11月04号 修改了商店政策 允许公司账户的应用使用三方支付S ...

  7. Google帝国研究——Google的产业构成

                                                                                        Google帝国研究--Goog ...

  8. Windows Phone 放开政策 - 应用内支付(IAP)可加入三方支付

    Windows Phone 应用商店在 今年(2013)11月04号 修改了商店政策 允许公司账户的应用使用三方支付SDK. 通过 App certification requirements cha ...

  9. 怎样用Google APIs和Google的应用系统进行集成(4)----获得Access Token以通过一些Google APIs的OAuth2认证

    在上篇文章中: "怎样用Google APIs和Google的应用系统进行集成(3)----调用发现Google APIs的RESTful的服务"一文中,我们直接用jdk的java ...

随机推荐

  1. Maven的安装使用以及 Maven+Spring hello world example

    关于Maven Maven是一个用于项目构建的工具,通过它便捷的管理项目的生命周期.即项目的jar包依赖,开发,测试,发布打包. 做过.NET的人应该会联想到Nuget,是的Maven其实就是java ...

  2. OWIN概述

    关于OWIN OWIN defines a standard interface between .NET web servers and web applications. The goal of ...

  3. [Architecture Pattern] Singleton Locator

    [Architecture Pattern] Singleton Locator 目的 组件自己提供Service Locator模式,用来降低组件的耦合度. 情景 在开发系统时,底层的Infrast ...

  4. DigitalOcean上SSH Key的创建(附DigitalOcean邀请)

    DigitalOcean是一家云主机商家,最低配置512M内存,20G的SSD,每月只有5刀.半个月前刚刚在这上面买了一个VPS,创建Droplet的时候看见创建SSH Key的时候就有点懵,不知道这 ...

  5. ASP.NET MVC 微信公共平台开发之验证消息的真实性

    ASP.NET MVC 微信公共平台开发 验证消息的真实性 在MVC Controller所在项目中添加过滤器,在过滤器中重写 public override void OnActionExecuti ...

  6. ASP.NET页面间传值总结

    本文我们将讨论的是ASP.NET页面间数据传递的几种方法,对此希望能帮助大家正确的理解ASP.NET页面间数据传递的用处以及便利性. Web页面是无状态的,服务器对每一次请求都认为来自不同用户,因此, ...

  7. ABAP 表格控制(Table Control)和步循环

    表格控制(Table Control)和步循环     1.两个标准Demo: SAPMTZ60,SAPMTZ61 2.简介 3.建立Table Control程序的基本流程 4.使用步循环 5.表格 ...

  8. 参加2015年TOP100会议的零散笔记

    2015年出差很少,感到整个技术都已经荒废了,收到12月份TOP100的会议通知后,还是去充点电吧,不然心慌啊.对于软件大会这种大杂烩式的会议已经没有多少兴趣了,看看这个TOP100组织得有何不同? ...

  9. MySQL全文索引应用简明教程

    本文从以下几个方面介绍下MySQL全文索引的基础知识: MySQL全文索引的几个注意事项 全文索引的语法 几种搜索类型的简介 几种搜索类型的实例 全文索引的几个注意事项 搜索必须在类型为fulltex ...

  10. 安卓开发_慕课网_ViewPager与FragmentPagerAdapter实现Tab实现Tab(App主界面)

    学习内容来自“慕课网” ViewPager与FragmentPagerAdapter实现Tab 将这两种实现Tab的方法结合起来.效果就是可以拖动内容区域来改变相应的功能图标亮暗 思路: Fragme ...