您的位置:首页 > 移动开发

用ActionScript/MXML同时开发/实作iOS与Android的程序内购买(In-App Payments)

2011-09-22 17:02 393 查看
以下是转载http://developer.openplug.com/zh/resources/training-material/329-tutorial-in-app-payments教程的部份内容

关于程序内购买(In-App Payments)

程序内购买(In-App Payment)是Android和iOS设备上可以用来在移动应用内贩卖额外的虚拟内容的web服务。应用程序可以提供任何应用"内部"的产品,且用户可以在此付款。

应用程序不必处理财务有关的交易动作,这些事将服务器的付款服务来处理。

OpenPlug Studio现在提供标淮的API支持iOS和Android的程序内购买。

程序内购买的流程如下:

当用户要购买某一产品时,应用程序会要求服务器向用户收取货款。
服务器会处理全部交易相关的细节,其中包括向用户提示付款/确认付款的窗体和处理财务方面的交易。
当付款的流程完成后,服务器会传送付款的细节给应用程序,例如订单编号、订购的时间/日期和付款金额等。
应用程序向服务器回复告知已收到传来的付款通知。

关于每个平台上关于程序内购买的更多信息,请参阅平台的官方文件:

Android: In-App Billing(程序内付款)

iOS: In-App Purchase Programming Guide(程序内购买编程指南)

预设条件:

Android:

您需要Google Merchant Checkout 账号。
将您的应用在Android Market上架。
注册您要用户购买的产品
参阅Testing In-app Purchases Using Your Own Product IDs(用您的产品识别号来测试程序内购买)

iOS:

您将需要paid apps合同。
将应用放上iTunes Connect。
注册您要用户购买的产品。
参阅iTunes Connect developer guide(iTunes Connect开发者指南)。

使用OpenPlug Studio作程序内购买

在这个章节我们将说明如何用OpenPlug Studio作程序内购买,它的流程很简单:

建立一个在整个应用生命周期都是单一的InAppPaymentsManager实例。

这个类是放在openplug.elips.services 套件。(更多的信息请参阅 OpenPlug Studio 应用程序接口参考手册)

用isEnabled()方法检查是否在您的设备/应用InAppPayments服务有启用。这个服务会分派inAppPaymentsEnabled 事件。

当您收到inAppPaymentsEnabled 事件时(只有在InAppPayments服务有启用时才会发生),开始让您的用户购买产品:

在iOS上您可以用getProductsInfo()方法和注册的产品识别号来从AppStore取得产品信息(特别在地化的描述和价钱)。

系统将会发出inAppPaymentsProductsInfo 事件。
在Android上,您必须自行管理这些数据(例如由您自己的产品服务器汇入这些数据)

依据用户的需求,调用purchase 方法来对给予的(用户购买的产品的)产品识别号启动付款的请求。

当交易的装态改变时,系统会发出inAppPaymentsUpdated 事件。
用confirmTransactions()方法来回复服务器您的应用已处理(已传送付款)。
用restoreTransactions()方法来回复先前的交易(只能对可以回复交易的产品种类,可参阅平台官方文件)。

系统将会发出inAppPaymentsUpdated 事件。

注意:

您会发现所有的方法都是异步的(asynchronous),亦即您会藉由InAppPaymentsManager 事件得到您发出请求的响应。

一个强烈建议的编程好习惯是在您的应用一开始启动时就监听InAppPaymentEvent 事件,原因是平台可能会在应用程序启动的过程发送这类的事件。

例如您的应用在付款交易的过程中不正常的关闭,这样的情况下,系统会在应用下次启动时告知交易的状态。

(注:OpenPlugStudio是可用MXML/ActionScript同时建立iPhone/iPad、Android和Symbian手机/平板计算机原生型应用程序的开发工具。它用了Flex 3.5框架的子集,但它是将MXML/ActionScript转成C++再用平台编译程序编成平台机器码,并把大部份常用的UI Component直接"映像"到原生的UI控件,因此会呈现和一般Xcode和Android SDK开发出来的用户界面一模一样的效果。自从OpenPlug公司被Alcatel-Lucent并购后,这个工具变成全功能免费(只对技术支持收费)。它可在它的"开发者天地"(
http://developer.openplug.com/zh)上免费下载安装。)
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: 
相关文章推荐