一个好老好老的老程序员了。
全部博文(915)
分类: Android平台
2017-10-02 22:14:42
正如我上面提到的,IAPs针对iOS和Android有几种支付方式适用于我们的移动应用,下面是一个快速概述:
我将集中在最常见的类型,非消耗品,在这个博客文章。
在我们开始执行代码之前,我们必须确保我们的应用程序设置得正确,以便开始接受购买。每个平台处理这种不同,但我会覆盖的基本知识。我强烈推荐以下关于iOS和Android的应用程序购买的完整文档,以获取更多信息。
您必须首先确保在iTunes Connect和谷歌Play开发控制台中设置了应用程序。
任何应用程序,需要使用应用内购买需要一个独特的应用程序标识符(不包含通配符允许)为提供资料会自动设置IAP功能。一旦应用程序被创建,我们可以去 Features 一节。创建一个新的IAP,选择“非消费”。然后,我们将填写额外的信息,如产品ID(我们将在代码中使用的唯一标识符)、价格和产品描述。
一旦IAP设置完成,我们就可以开始集成了。
Android更复杂一些,因为我们不能为我们的应用程序添加一个新的IAP,直到我们发布一个包含应用程序的应用程序的版本。它需要包含com.android.vending.BILLING 权限。我们可以通过插入以下内容来添加:
…以下的行…
...
…在AndroidManifest.xml中
然后,应用程序可以在谷歌开发控制台的alpha或beta频道中发布,并且在应用程序的“应用程序购买”部分中还可以添加一个新的IAP。创建IAP作为管理产品是重要的。
然后我们将被带到一个页面,里面详细介绍了IAP的内容。我们必须拯救IAP和设置它为活跃或不工作的时候,我们实现的代码。
随着应用程序的设置,我们现在可以将代码。每个平台都有处理购买不同的机制,但他们每个人都做类似的事情,这就是为什么我的工作与我们的组件团队Jon Dick创造Xamarin,应用收费插件,Xamarin和Windows电话我们一个新的插件, 这简化了整个购买过程。T插件从跨平台API处理购买、订阅、消费和产品信息;如果您需要定制流程,我强烈建议您通过iOS和Android的应用程序购买中的完整文档进行阅读。.
开始的时候,我们会安装应用收费插件(插件。inappbilling)在我们所有的项目,包括我们的便携式类库和移动应用程序项目:
Android只需要一点点的建立。我们会在活动,将使购买电话或MainActivity添加以下代码(为Xamarin.Forms):
protected override void OnActivityResult(int requestCode, Result resultCode, Intent data) { base.OnActivityResult(requestCode, resultCode, data); InAppBillingImplementation.HandleActivityResult(requestCode, resultCode, data); }
现在,在我们的应用程序代码或共享代码中,我们可以继续使用一些简单的调用来连接购买账单服务,并尝试购买:
try { var productId = "mysku"; var connected = await CrossInAppBilling.Current.ConnectAsync(); if (!connected) { //Couldn't connect to billing, could be offline, alert user return; } //try to purchase item var purchase = await CrossInAppBilling.Current.PurchaseAsync(productId, ItemType.InAppPurchase, "apppayload"); if(purchase == null) { //Not purchased, alert the user } else { //Purchased, save this information var id = purchase.Id; var token = purchase.PurchaseToken; var state = purchase.State; } } catch (Exception ex) { //Something bad has occurred, alert user } finally { //Disconnect, it is okay if we never connected await CrossInAppBilling.Current.DisconnectAsync(); }
就是这样!在这一点上,我们可以在应用程序设置中存储这些信息,或者在成功购买时将其报告给后端服务。为了测试这个新的代码,我们需要在一个物理设备建立与配置文件,签署运行它或密钥库,为应用。
还有很多更多的单边行动计划,包括消费和产品信息,在应用收费插件API暴露。你可以找到在自述文件在GitHub上的项目更多关于。相同的文档将帮助您了解完整的安装、测试和故障排除指南,以便集成应用程序购买。