开始使用 Amazon 应用内购买 API
Amazon应用内购买API使您可以轻松地在您的应用程序中提供数字内容和订阅服务——例如游戏币、扩展包、升级、杂志期刊等等,供用户购买。
引言
Amazon应用内购买API使您可以轻松地在您的应用程序中提供数字内容和订阅服务——例如游戏币、扩展包、升级、杂志期刊等等,供用户购买。只需几分钟即可启动并运行,让数百万 Amazon 客户能够使用他们的 Amazon 1-Click 设置购买引人入胜的数字内容。
应用内购买API旨在封装购买流程背后的复杂性,同时仍然提供功能齐全的API集。 该API使用以下对象来完成应用内购买交易
- 购买管理器 - 用于启动API请求
- 购买观察者 - 处理API响应回调
- 响应接收器 - 方便从Amazon客户端到购买观察者的回调
- 收据验证服务 - 用于在您的应用程序外部验证收据的可选服务
下图概述了购买序列中涉及的步骤
最简单的实现可以在以下 5 个步骤中完成。
为了接收来自 Amazon 客户端的回调,您需要将以下行添加到 AndroidManifest.xml 文件的 <application>
部分。
<application>
.
.
.
<receiver android:name = "com.amazon.inapp.purchasing.ResponseReceiver" >
<intent-filter>
<action android:name = "com.amazon.inapp.purchasing.NOTIFY"
android:permission = "com.amazon.inapp.purchasing.Permission.NOTIFY" />
</intent-filter>
</receiver>
.
.
.
</application>
2. 实现购买观察者
购买观察者监听通过购买管理器启动的回调。观察者应该扩展 BasePurchasingObserver
类,允许您只覆盖您需要的回调方法。
至少,您需要处理用于检索项目数据和启动购买请求的回调。您可以在应用程序的活动中创建购买观察者类。
private class MyObserver extends BasePurchasingObserver {
public MyObserver() {
super(MainActivity.this);
}
@Override
public void onItemDataResponse(ItemDataResponse itemDataResponse) {
//Check itemDataResponse.getItemDataRequestStatus();
//Use itemDataResponse to populate catalog data
}
@Override
public void onPurchaseResponse(PurchaseResponse purchaseResponse) {
//Check purchaseResponse.getPurchaseRequestStatus();
//If SUCCESSFUL, fulfill content;
}
}
3. 注册购买观察者
您需要向购买管理器注册您的购买观察者,以便您的观察者可以监听回调。这应该在您的应用程序的 onStart
方法中完成。
protected void onStart() {
super.onStart();
PurchasingManager.registerObserver(new MyObserver());
};
4. 启动应用内购买
注册您的观察者后,您可以开始使用购买管理器来启动项目数据请求和购买请求。该API管理购买流程以及您的应用程序的所有客户互动。
使用购买管理器通过 initiateItemDataRequest
方法请求您的 SKU 的项目数据
PurchasingManager.initiateItemDataRequest("DeveloperSKU-1234");
使用购买管理器通过 initiatePurchaseRequest
方法启动您的 SKU 的购买请求
private OnClickListener purchaseClickListener = new OnClickListener() {
public void onClick(View v) {
String requestId = PurchasingManager.initiatePurchaseRequest("DeveloperSKU-1234");
}
};
5. 处理响应通知
在启动购买请求调用后,购买观察者将收到一个回调,其中包含与该请求匹配的响应对象。您的应用程序需要处理回调中收到的响应对象,并将内容提供给用户。此实现将特定于您的应用程序。此时,您的基本实现已完成,您可以开始使用 SDK Tester App 进行测试。
要了解有关 Amazon 应用内购买 API 的更多信息,请单击此处。我们还为 Eclipse 创建了一个插件,以加快开发速度并减少项目设置时间。有关 Amazon Mobile App SDK Eclipse 插件的更多信息,请单击此处。
本文经 Amazon Digital Services, Inc. 许可转载。