GooglePlay支付使用总结一

GooglePlay支付使用总结1

使用前说明

google play 支付需要使用google的服务,对于国内普通用户而言,这是不现实的。手机需要有完整的google服务,自己可以刷机解决,或者购买港版,或者美版的手机,如google的nexus系列产品。

另外使用中,需要有vpn,国内的网络是没有办法访问goole服务的。(手机端需要自己添加vpn,方可访问)

支付总体说明

  1. 其实详细的支付文档http://developer.android.com/google/play/billing/index.html 在这里面已经有了,不过英文看起来还是有点吃力的,特别是东西多了,容易犯迷糊。我主要想讲的是Standard in-app products (one-time billing). google play应用内购的支付,购买的是自己app里面的商品这一块,对于Subscriptions (recurring, automated billing)这个就不做讲解。
  2. In-app Billing Overview(概述),使用google play支付服务,需要你的手机安装google play(google的应用商店),这样才能够使用支付的服务接口,我们使用的是In-app billing Version 3,这个是最新版本,说的是支持android2.2以上版本的,当然了,现在一般都是4.1.2以上版本了。
  3. In-app Products(应用内的产品)(也就是所谓的虚拟产品,类似游戏里面的道具,欢乐豆什么的东东,并不是物理真实存在的商品,相信大家都能明白)。 通过Google Play Developer Console(google play的开发者后台)可以定义我们自己的产品(包含产品的详细信息,如, ID (also called its SKU), product type, pricing, description)。
  4. google play Console的作用,类似于国内的豌豆荚,91助手等国内应用市场提供的开发者后台。开发者用来上传自己的app。
  5. 介绍了前面的这些基础知识,接着就说一下,在应用中集成支付服务。google提供了一个支付的demo,可以供我们借鉴,参考,当然了要是英文不好的话,得仔仔细细看好几遍,才能明白它的意思。http://developer.android.com/training/in-app-billing/preparing-iab-app.html#GetSample 这个链接里面讲的就是如何操作这个demo,我这边只说一下总体的,会在后面展开说。demo名称是TrivialDrive,这个demo需要我们打开android sdk Manager,展开Extras选项,选择这一项 Google Play Billing Library.下载这个包,之后我们可以在/extras/google/play_billing/.这个目录下找到。具体如何添加代码,配置权限,aidl,util/xxx.java等信息在后面讲
  6. 当集成完了支付服务后,需要我们做的是Testing In-app Billing(测试应用内支付)http://developer.android.com/google/play/billing/billing_testing.html#billing-testing-test。测试之前需要我们在Developer Console,Settings > Account details,添加Gmail accounts with testing access ,给我们的应用常见测试帐号。

支付流程关键部分详细说明

集成支付服务 详细内容请点这里

我的开发环境是android studio,由于我们的项目已经存在了,就不需要重新创建工程了。而是需要将TrivialDrive这个demo里面的代码复制过去。

  1. 在src/main下,创建aidl文件夹,并建立一个包,名为com.android.vending.billing,复制IInAppBillingService.aidl文件到这,(android studio容易抽风,添加aidl文件后,反应半天才生成了class文件),可以自己试下,./gradlew build构建一下
  2. IInAppBillingService.java会生成,android里面的跨进程通讯知识相关的内容
  3. 复制TrivialDrive下面的util包,将这些工具类复制到自己的项目中
  4. 添加权限声明,在AndroidManifest.xml文件里面配置上这段代码
    <uses-permission android:name="com.android.vending.BILLING" />
  5. 还有一点需要补充,我们每一个app都有一个 public key,这个是用来构造我们的IabHelper对象的(自己在后台找吧)。
  6. 这样,需要的支付环境我们已经准备好了,接下来讲一下如何在应用中进行支付,在我们支付之前,我们还得准备一件事情,那就是,把我们添加权限,aidl,util包等信息,提交到版本控制上,然后打包,生成我们需要的apk文件,需要将apk文件添加到google play的console上,详情看这篇文章http://developer.android.com/google/play/billing/billing_admin.html要注意的一点就是,当我们上传的apk文件拥有com.android.vending.BILLING permission时, In-App Products 这个选项才会出现,可以参考这一段内容,* The In-App Products link appears only if you have a Google payments merchant account and the application’s manifest includes the com.android.vending.BILLING permission.这样的话,我们就可以添加应用内的商品了,可以看看官方的图片GooglePlay支付使用总结一 还有一步需要我们做的就是添加测试帐号,Setting Up Test Accounts,具体的做法,是用管理app应用的帐号,点击Settings图标,Locate the License Testing panel. 接着Add the email addresses for the test accounts you want to register, separating each account with a comma. 添加邮箱地址,保存,这样你的另一个邮箱就成了测试帐号,对我而言,我自己的公司邮箱就是测试帐号,app是公司总监管理的。之后又一个链接,你就可以看见了(进去之前,先清除一下浏览器的缓存),通过这个链接,你就可以到google play上下载这个测试的app了,当然了,我们还没有讲到这一步,因为我们还没有讲解具体集成支付的内容,页面交互相关。先写到这吧,下一篇继续分享,希望对大家有帮助。

版权声明:本文为博主原创文章,未经博主允许不得转载。