位置: 编程技术 - 正文

Intel 英特尔之开发人员专区 ------Android 开发之Android 应用程序如何调用支付宝接口(英特尔在哪打开)

编辑:rootadmin
Android 开发之Android 应用程序如何调用支付宝接口

推荐整理分享Intel 英特尔之开发人员专区 ------Android 开发之Android 应用程序如何调用支付宝接口(英特尔在哪打开),希望有所帮助,仅作参考,欢迎阅读内容。

文章相关热门搜索词:英特尔噔噔噔噔噔,英特尔xe,英特尔 噔噔噔噔,英特尔 噔噔噔噔,英特尔k,英特尔 噔噔噔噔,英特尔噔噔噔噔噔,英特尔噔噔噔噔噔,内容如对您有帮助,希望把文章链接给更多的朋友!

zheng z. 于 年 3 月 5 日 提交

新浪 腾讯

最近在做一个关于购物商城的项目,项目里面付款这块我选的是调用支付宝的接口,因为用的人比较多。

1、到支付宝官网,下载支付宝集成开发包

由于android设备一般用的都是无线支付,所以我们申请的就是支付宝无线快捷支付接口。下面是申请的地址以及下载接口开发包的网址: 快捷支付(无线)这个服务。) 下载集成开发包( ↓ ↓ ↓ ↓ 把“alipay_demo”项目导入到Eclipse中,run一下;成功之后,好好的研究研究该demo,至于到时候如何集成到你的项目里面,文档上说明很详细,按着文档上一步一步来就行了。我的建议是先把这个demo弄懂再设计你的项目,看看调用接口是需要哪些数据,这样也有利于你一开始设计数据。

2、介绍接口demo里面的结构

· 打开项目会发现里面有5个类: 其中,Base.java、PayResult.java、SignUtils.java这三个类不需要动,到时候直接放到项目里面就行了,如果你想了解它们也可以看看。重点就是ExternalFragment.java和PayDemoActivity.java这两个类。先来说说PayDemoActivity.java类。

package com.alipay.sdk.pay.demo; /* 请 参考《移动支付接口SDK2.0标准版接入与使用规则》__(7.2 RSA密钥生成与使用),并使用压缩包中的openssl RSA密钥生成工具,生产一套RSA公私钥。 这里签名时,只需要使用生成的RSA私钥。 Note:为了安全起见,使用RSA私钥进行签名的操作过程,应该尽量放到商家服务器端去进行。 */public class PayDemoActivity extends FragmentActivity { //商户PID(合作身份者id,以开头的位纯数字,这个你申请支付宝签约成功后就会看见) public static final String PARTNER = ""; //商户收款账号(这里填写收款支付宝账号,即你付款后到账的支付宝账号) public static final String SELLER = ""; //商户私钥,pkcs8&#;式(商户私钥,自助生成,即rsa_private_key.pem中去掉首行,最后一行,空&#;和换行最后拼成一行的字符串,rsa_private_key.pem这个文件等你申请支付宝签约成功后,按照文档说明你会生成的,如果android版本太高,这里要用PKCS8&#;式用户私钥,不然调用不会成功的,那个&#;式你到时候会生成的,表急。) public static final String RSA_PRIVATE = ""; //支付宝公钥(支付宝(RSA)公钥,用签约支付宝账号登录ms.alipay.com后,在密钥管理页面获取;或者文档上也有。 ) public static final String RSA_PUBLIC = "";}

PayDemoActivity.java这个类等你申请支付宝签约成功后再配置,先放在这不用管,如何配置我注释里面已经写的很明白了。

然后是ExternalFragment.java这个类。这个类其实很简单,你运行这个demo会发现其实在PayDemoActivity.java类的onCreate()方法中填充的布局包含了ExternalFragment类,因此就会显示ExternalFragment类填充的布局,然后点击“支付”按钮,就会调用支付宝接口(因为PayDemoActivity.java未配置,所以你现在估计调用不成功)。我们找到按钮的点击事件的方法就找到调用支付宝的入口了,这个类的代码如下:

/** * call alipay sdk pay. 调用SDK支付 * */ public void pay(View v) { // 订单 String orderInfo = getOrderInfo("测试的商品", "该测试商品的详细描述", "0."); // 对订单做RSA 签名 String sign = sign(orderInfo); try { // 仅需对sign 做URL编码 sign = URLEncoder.encode(sign, "UTF-8"); } catch (UnsupportedEncodingException e) { e.printStackTrace(); } // 完整的符合支付宝参数规范的订单信息 final String payInfo = orderInfo &#; "&sign="" &#; sign &#; ""&" &#; getSignType(); Runnable payRunnable = new Runnable() { @Override public void run() { // 构造PayTask 对象 PayTask alipay = new PayTask(PayDemoActivity.this); // 调用支付接口,获取支付结果 String result = alipay.pay(payInfo); Message msg = new Message(); msg.what = SDK_PAY_FLAG; msg.obj = result; mHandler.sendMessage(msg); } }; // 必须异步调用 Thread payThread = new Thread(payRunnable); payThread.start(); }

现在,你已经知道代码是如何调用支付宝接口了。接下来的问题就是:如何把这些代码集成到你的项目中去?

3、写好你的项目4、如何将支付宝接口集成到你的项目当中Intel 英特尔之开发人员专区 ------Android 开发之Android 应用程序如何调用支付宝接口(英特尔在哪打开)

1.解压接口压缩文件(文件名是WS_MOBILE_PAY_SDK_BASE.zip),找到安卓的压缩文件(文件名是支付宝移动支付SDK标准版(Android).zip)。标准SDK以jar包方式提供给商户应用工程集成,打开alipay-sdk-common文件夹分别是alipaysdk.jar、alipaysecsdk.jar、alipayutdid.jar这三个jar包。 2.导入开发资源 (1) 将这 3 个 jar 包放入商户应用工程的 libs 目录下,如下图。 图1-1 libs目录结构 (2) 进入商户应用工程的 Java Build Path,将 libs 目录下的 jar 导入,如下图。 图1-2 导入jar (3) 选中 Order and Export,勾选 3 个 jar 包,如下图。 图1-3 勾选3个jar包 3.修改Manifest文件 在商户应用工程的AndroidManifest.xml文件里面添加声明:

<activity android:name="com.alipay.sdk.app.H5PayActivity" android:configChanges="orientation|keyboardHidden|navigation" android:exported="false" android:screenOrientation="behind" ></activity><activity android:name="com.alipay.sdk.auth.AuthActivity" android:configChanges="orientation|keyboardHidden|navigation" android:exported="false" android:screenOrientation="behind" ></activity>

和权限声明:

1<uses-permission android:name="android.permission.INTERNET" />2<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" />3<uses-permission android:name="android.permission.ACCESS_WIFI_STATE" />4<uses-permission android:name="android.permission.READ_PHONE_STATE" />5<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE"/>6<uses-permission android:name="android.permission.ACCESS_COARSE_LOCATION"/>

4.添加混淆规则 在商户应用工程的proguard-project.txt里添加以下相关规则:

-libraryjars libs/alipaysdk.jar-libraryjars libs/alipaysecsdk.jar-libraryjars libs/alipayutdid.jar-keep class com.alipay.android.app.IAlixPay{*;}-keep class com.alipay.android.app.IAlixPay$Stub{*;}-keep class com.alipay.android.app.IRemoteServiceCallback{*;}-keep class com.alipay.android.app.IRemoteServiceCallback$Stub{*;}-keep class com.alipay.sdk.app.PayTask{ public *;}-keep class com.alipay.sdk.app.AuthTask{ public *;}-keep class com.alipay.mobilesecuritysdk.*-keep class com.ut.*

至此,SDK开发资源导入完成。 5.订单数据生成 在调用SDK支付时需要提交订单信息info,其中参数以key=“value”形式呈现,参数之间以“&”分割,所有参数不可缺。 6.支付接口调用 需要在新线程支付接口。(可参考alipay_demo来实现) 获取PayTask支付对象调用支付,代码实例:

final String orderInfo = info; // 订单信息Runnable payRunnable = new Runnable() { @Override public void run() { PayTask alipay = new PayTask(DemoActivity.this); String result = alipay.pay(orderInfo); Message msg = new Message(); msg.what = SDK_PAY_FLAG; msg.obj = result; mHandler.sendMessage(msg); }};// 必须异步调用Thread payThread = new Thread(payRunnable);payThread.start();

7.支付结果获取和处理 调用pay方法支付后,将通过2种途径获得支付结果: · 同步返回 商户应用客户端通过当前调用支付的Activity的Handler对象,通过它的回调函数获取支付结果。(可参考alipay_demo来实现) 代码示例:

1private Handler mHandler = new Handler() {2 public void handleMessage(Message msg) {3 Result result = new Result((String) msg.obj);4 Toast.makeText(DemoActivity.this, result.getResult(),5 Toast.LENGTH_LONG).show();6 };7};

· 异步通知 商户需要提供一个http协议的接口,包含在参数里传递给快捷支付,即notify_url。支付宝服务器在支付完成后,会以POST方式调用notify_url,以xml数据&#;式传输支付结果。 8.查询有效账号接口调用 调用PayTask对象的checkAccountIfExist()方法查询。(可参考alipay_demo来实现)。 代码示例:

Runnable checkRunnable = new Runnable() { @Override public void run() { PayTask payTask = new PayTask(DemoActivity.this); boolean isExist = payTask.checkAccountIfExist(); Message msg = new Message(); msg.what = SDK_CHECK_FLAG; msg.obj = isExist; mHandler.sendMessage(msg); }};Thread checkThread = new Thread(checkRunnable);checkThread.start();

9.获取当前SDK版本号 调用PayTask对象的getVersion()方法查询。 代码示例:

1PayTask payTask = new PayTask(activity);2String version = payTask.getVersion();、向支付宝申请签约2 3点击文章开头给的网址,直接点击“在线申请”,目的是为了获得PID与密钥,到时候你好按照文档配置你的PayDemoActivity.java文件。4 5申请要上传你的apk或者产品说明文档,我用的是产品说明文档,里面要包括产品说明(最好有产品截图,我第一次没截图直接没成功)、接口使用场景、资费说明。6 7申请成功后按文档上说明,做几个密钥什么的哈哈,上传你做的公钥。然后PayDemoActivity.java里面配置。这里要注意的是,String RSA_PRIVATE=“”;这里要用PKCS8&#;式的私钥。8 9好了,android集成支付宝接口我认为比较快的过程就是这些了,祝你配置成功!

绑定服务时什么时候调用onRebind Serivce中onRebind被调用的时机很特别,想知道什么时候onRebind被调用,可以接下面的次序来学习,最后自然就明白了!1.首先要知道,同一个服务既可能被

【Android开发】线程实例-多彩霓虹灯 利用之前学过的多线程处理技术,我们做一个利用Android手机显示一个多彩霓虹灯效果的小实例。布局文件,这里只留有加了id的线性布局文件res/layout/mia

Android 自定义日期控件 (仿QQ,IOS7) 还记得上篇:Android日期时间选择器,本篇是根据上篇修改而来,先看下qq中日期选择的效果:鉴于目前还没有相的开源日期控件,因此本人花费了一些

标签: 英特尔在哪打开

本文链接地址:https://www.jiuchutong.com/biancheng/383217.html 转载请保留说明!

上一篇:[安卓]手机管家(八)防盗之业务逻辑(安卓手机管家如何卸载)

下一篇:绑定服务时什么时候调用onRebind(什么绑定什么服务)

  • 海产品的增值税税率是多少
  • 所得税分录是怎么计算的
  • 堤防是啥
  • 纳税调整增加额在报表的哪里
  • 财政补助资金是什么意思
  • 取得住宿发票的专用发票可以抵扣吗
  • 免抵税额什么时候缴纳城建税
  • 每月先报税还是先清卡
  • 虚开增值税普通发票罪的立案标准
  • 可抵扣农产品进项税额吗
  • 用友u8如何结转期间损益
  • 未确认融资费用是一级科目吗
  • 建筑企业劳保计入哪个科目?
  • 国有企业取得的土地收储款是否要上缴财政
  • 公司先注册实收资本后付账该如何做会计处理呢?
  • 报销个人费用如何定性
  • 新成立公司没有财务报表情况说明
  • 印刷费怎么开发票
  • 小规模增值税未开票收入填哪里
  • 没领税票会产生税吗
  • 分摊的水费应取得何种扣除凭证
  • windows7如何格式化恢复出厂设置
  • mac如何恢复到出厂系统版本
  • el-input value
  • 业务招待费如何进行纳税调整
  • centos7搭建http
  • 营业执照贴印花税票吗
  • 现金流量表期初现金余额怎么计算
  • 长期借款的核算分为哪三个阶段
  • sql有什么
  • 中国互联网创业成功的年轻人
  • 进项税额转出忘记申报咋办
  • 发票没拿回来可以报销吗
  • 发票超额怎么办
  • 收到以前年度多交增值税账务处理怎么做账
  • 固定资产管理台账
  • sql server2005查询
  • 需要登记的权利
  • 实收资本为零的风险 债权人
  • 收到退还的增值税
  • 委托加工物资的消费税计入成本吗
  • 商誉是成本法还是收入法
  • 普通发票记账联丢了怎么解决
  • 服务业预收账款什么时候确认收入
  • 小规模纳税人购进商品会计分录
  • 存款基准利率是不是利息
  • 本月只有进项税没有销项税需要结转吗
  • 公路工程投标保证金
  • 应交增值税进项税额月底怎么处理
  • 挂靠经营的会计处理是?
  • 因产品质量问题造成的损失怎么赔偿
  • 发票打印机格式不对
  • 安全生产费的会计分录
  • 办公家具可以一次性抵扣吗?
  • 进项票取得晚了怎么抵扣
  • 加计抵扣进项税分录
  • 装修公司做账涉及科目
  • 弥补上年亏损的分录 所得税
  • 安装完xp系统直接蓝屏怎么办
  • 忘记mysql密码
  • os x10.12支持的机型
  • suse linux教程
  • win7系统可移动的文件
  • win 10设置提醒
  • 在linux中使用什么命令可以给命令起别名
  • win10安装完后有多大
  • win7电脑没有显示无线网络
  • win8桌面不见了
  • git 登陆用户
  • unity3d的
  • javascript中函数
  • uleb128、sleb128和uleb128p1编码格式介绍
  • jquery插件开发方法
  • 开源 android 播放器
  • python 父类方法
  • 详解金球奖之争
  • 如何办理清税证书
  • 如何电子税务局缴纳社保费用
  • 税务部门立足
  • 建筑业统一发票税率
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

    网站地图: 企业信息 工商信息 财税知识 网络常识 编程技术

    友情链接: 武汉网站建设