位置: 编程技术 - 正文

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(什么绑定什么服务)

  • 什么是抄报税证明
  • 税务问答网站
  • 工程项目纳税
  • 个人所得税年度汇算时间
  • 发票替代票
  • 网络贷款需要缴纳保证金吗
  • 期初未缴税额本年累计是什么意思
  • 工会经费如何申报?
  • 净资产增加额计算公式
  • 百旺税盘网络连接不上
  • 商贸企业购进商品怎么做成本
  • 赠与合同收税吗
  • 购买成品入库并结转成本会计分录怎么写?
  • 总分公司能互相开票吗
  • 共同投资叫什么
  • 贸易公司买进卖出
  • 一月份开的票可以算到12月吗
  • 接受捐赠收入要计入企业所得税应纳税所得额吗
  • 几年前的美元现在值钱吗
  • 车辆保险抵扣会计分录
  • 专项储备属于利润分配吗
  • 跨年度暂估未取得发票如何处理
  • 如何编制处置固定资产
  • win10启用网络发现保存后又变成了关闭
  • 境外服务包括哪些内容
  • 高新技术产业研究院有限公司
  • RunClubSanDisk.exe是什么程序? 闪迪U盘广告推介程序
  • php技术实现加载的过程
  • 长期应付款的摊余成本怎么计算
  • php domdocument
  • 外国政府贷款利息是否征收增值税
  • 增值税检查的内容
  • thinkphp console
  • php连接mysql数据库的几种方式及区别
  • 补计提去年所得税费用会计分录
  • 超过500万需要补税吗
  • 大前端需要掌握什么技能
  • 结转成本费用的会计分录是什么?
  • 成本票和费用票一样吗
  • 冷饮成本价
  • 国库集中支付发送签收失败
  • 苹果cms仿站教程
  • 电脑word怎么学
  • 增值税专用发票怎么开
  • 2021发票认证
  • 房地产开发企业建造的商品房,在出售前
  • mysql all
  • 费用报销单如何粘贴票据
  • 城建税的征收范围不包括农村
  • 上期留底增值税什么意思
  • 出口货款收不回怎么办
  • 报废的固定资产清理的净损失计入营业外支出
  • 软件企业确认收入
  • 汇算清缴亏损弥补不能自动带出该怎么办
  • 银行承兑汇票提示付款期限
  • 低值易耗品怎么做账
  • 彻底删除sql server2019
  • 系统32位和64位的区别 Windows系统32位和64位的区别在哪里
  • 苹果macbook怎么切换系统
  • windows10周年更新
  • win7系统无法安装谷歌怎么办
  • win7旗舰版显示不全屏
  • 举例说明linux的主要应用领域
  • w10系统每次启动都要选择系统
  • win8无法安装inter显卡驱动
  • perl-v
  • listview安卓
  • jquery操作数组
  • 搭建nodejs
  • edittext弹出软键盘
  • 用javascript
  • 字符串中指定字符变换
  • android应用市场有哪些
  • 电子税务局获取验证码异常
  • 北京孩子社保网上怎么缴费
  • 湖北国税发票真伪查询
  • 常州的居民医保在哪里交
  • 境外抵免限额如何申请
  • 技术服务收入确认方法
  • 企业可以出台政策吗
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

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

    友情链接: 武汉网站建设