Android支付接入(八):Amazon亚马逊支付
二:drawable-hdpi文件夹中最好放置高分辨率的桌面图片(建议512*512),因为Kindle fire设备有个旋转菜单,96*96分辨率在上边太模糊。
四:本地测试支付成功后,订阅商品可以在AmazonSDKTester.apk中查看:
下边来看下代码实现:
<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>
程序中配置:
@Override
protected void onStart() {
// TODO Auto-generated method stub
super.onStart();
PurchasingManager.registerObserver(new MyObserver(MainActivity.this));
}
2.添加jar包,一下是路径或者直接从源码中copy
private void copyDataBase () throws IOException{
InputStream myInput = getAssets ().open ("amazon.sdktester.json");
String outFileName = path;
OutputStream myOutput = new FileOutputStream (outFileName);
byte[] buffer = new byte[1024];
int length;
while ((length = myInput.read (buffer)) > 0){
myOutput.write (buffer, 0, length);
}
myOutput.flush ();
myOutput.close ();
myInput.close ();
}
4.安装AmazonSDKTester.apk
5.调用支付接口
PurchasingManager.initiatePurchaseRequest("qht200catcapcoin");
class MyObserver extends BasePurchasingObserver{
public MyObserver(Context arg0) {
super(arg0);
// TODO Auto-generated constructor stub
}
@Override
public void onItemDataResponse(ItemDataResponse arg0) {
// TODO Auto-generated method stub
super.onItemDataResponse(arg0);
}
@Override
public void onPurchaseResponse(PurchaseResponse arg0) {
// TODO Auto-generated method stub
super.onPurchaseResponse(arg0);
switch (arg0.getPurchaseRequestStatus()) {
case SUCCESSFUL:
final Receipt receipt = arg0.getReceipt();
switch (receipt.getItemType()) {
//消耗品
case CONSUMABLE:
new AlertDialog.Builder(MainActivity.this).setTitle("支付成功").setMessage("成功购 买"+productName).setPositiveButton("确定", null).show();
break;
//授权内容,支付成功
case ENTITLED:
new AlertDialog.Builder(MainActivity.this).setTitle("支付成功").setMessage("成功激活正 版游戏").setPositiveButton("确定", null).show();
break;
//订阅内容,支付成功
case SUBSCRIPTION:
break;
}
break;
case ALREADY_ENTITLED:
//已经授权过的,属于成功,此时将道具给玩家即可
break;
case FAILED:
Toast.makeText(MainActivity.this, "支付失败", Toast.LENGTH_LONG).show();
break;
case INVALID_SKU:
Toast.makeText(MainActivity.this, "无法识别的sku", Toast.LENGTH_LONG).show();
break;
}
}
@Override
public void onGetUserIdResponse(GetUserIdResponse arg0) {
// TODO Auto-generated method stub
super.onGetUserIdResponse(arg0);
}
@Override
public void onSdkAvailable(boolean arg0) {
// TODO Auto-generated method stub
super.onSdkAvailable(arg0);
}
}
MainActivity.java完整代码如下:
Android支付接入(八):Amazon亚马逊支付的更多相关文章
- 解密:Amazon亚马逊产品Listing关键词刷单排名原理
第一:基本概念 在阅读正文之前,请先理解下面的几个基本概念. 核心词[高频词.热词.大词.主词]:长度大约1~2个单词构成,指每天搜索量比较多的词,每个行业对高频词的划分不一样,这个主要看自己 ...
- 亚马逊CEO贝索斯致股东信:阐述公司未来计划
亚马逊CEO 杰夫·贝索斯(Jeff Bezos)今天发布年度股东信, 详细描述了亚马逊的产品.服务和未来计划,当然,信中并没有任何的硬数据,比如说亚马逊Kindle的销量等等.但这封信也包括一些颇令 ...
- BTC暴涨市值仅次于亚马逊,NGK推出新人助力空投,直接免费送VAST!
数据显示,在谷歌搜索中,关键词"BTC"的全球搜索指数在过去一周达到满值100点.特斯拉"加持"下,比特币重启暴涨模式,最高报价48126美金单价,非小号数据显 ...
- 亚马逊6月18日发布惊世之作 或为3D智能手机
亚马逊将在 6 月 18 日举行一个产品发布会. 其内容可能是关于传闻已久的亚马逊智能手机.该公司在 YouTube 上公布了一段炫耀这款设备的视频.这段视频展示了很多人在这款产品前摇头晃脑,并且表现 ...
- 亚马逊Prime会员的杀价,能说明会员+会越来越便宜吗?
前段时间,京东又坑了!京东调整了物流方案--从原来的购物不满49元只需6元运费,调整到购物不满46元运费15元,运费猛涨了9元!原本京东PLUS会员每月有5张免运费券,但在运费涨价后运费券限制在6元, ...
- [转]Amazon AWS亚马逊云服务免费一年VPS主机成功申请和使用方法
今天部落将再次为大家介绍如何成功申请到来自亚马逊的Amazon AWS免费一年的VPS主机服务.亚马逊公司这个就不用介绍了,是美国最大的一家网络电子商务公司,亚马逊弹性计算云Amazon EC2更是鼎 ...
- Amazon EMR(Elastic MapReduce):亚马逊Hadoop托管服务运行架构&Hadoop云服务之战:微软vs.亚马逊
http://s3tools.org/s3cmd Amazon Elastic MapReduce (Amazon EMR)简介 Amazon Elastic MapReduce (Amazon EM ...
- 在亚马逊amazon的AWS上安装Node和MongoDB服务器
在亚马逊amazon的AWS上安装Node和MongoDB服务器 在建立AWS上账号.创建EC2 ,用putty链接上之后,就可以用下面的方法开始安装. !!! 如果不是是自己建立的EC2, 而是由B ...
- 亚马逊云服务器VPS Amazon EC2 免费VPS主机配置CentOS及其它内容
Amazon目前提供为期一年的免费VPS服务,可到地址http://aws.amazon.com 进行申请. 现在对账号申请成功后,对VPS主机配置CentOS的过程做个图文介绍 1.创建实例(Ins ...
随机推荐
- CxSkinButton按钮皮肤类
在codeproject 发现一个很强大的按钮皮肤类,之前的版本有内存泄露,但是作者已经修复了,原文网址是:http://www.codeproject.com/KB/buttons/cxskinbu ...
- Leetcode: Median of Two Sorted Arrays. java.
There are two sorted arrays A and B of size m and n respectively. Find the median of the two sorted ...
- ASP.NET - 用户控件制作
首先添加用户控件: 在里面写上代码: <%@ Control Language="C#" AutoEventWireup="true" CodeBehin ...
- MFC用GDI+动感歌词的制作
源代码:http://download.csdn.net/detail/nuptboyzhb/4219669 源代码: 1. 插入一个对话框的资源,删除默认控件,并为对话框创建一个类,命名 ...
- checkbox之checked的方法(attr和prop)区别
1. $('#checkbox').click(function(){ if($('#checkbox').is(':checked')) { $(".sendmailhui"). ...
- .bash_profile与.bashrc和.profile的区分概念
在Linux系统中配置环境变量相关的文件主要有如下几个,很容易弄混的,这儿简单区分下: /etc/profile:此文件为系统的每个用户设置环境信息,当用户第一次登录时,该文件被执行.并从/etc/p ...
- Basic4android:多功能的Android应用软件快速开发平台
Basic4android 是目前最简单.最强大的Android平台快速应用开发工具. ( "Basic4android is the simplest and most powerful ...
- 【ASP.NET Web API教程】2.3.7 创建首页
原文:[ASP.NET Web API教程]2.3.7 创建首页 注:本文是[ASP.NET Web API系列教程]的一部分,如果您是第一次看本博客文章,请先看前面的内容. Part 7: Crea ...
- Windows 8 动手实验系列教程 实验7:磁贴和通知
动手实验 实验7:磁贴和通知 2012年9月 简介 磁贴是Windows应用商店应用用户体验的重要元素.当应用程序被安装后,它的磁贴将在Windows 8开始屏幕被创建.该磁贴(称为主磁贴)作为启动应 ...
- TPL异步并行编程之任务超时
此处参考自阿涛的博文:http://www.cnblogs.com/HelloMyWorld/p/5526914.html 一 自己定义 基本的思路: net中异步操作由于是交给线程来实现,因此不可能 ...