位置: 编程技术 - 正文

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

  • 城建税减半征收政策文件
  • 如何查询增值税申报表
  • 退回资本金要交税吗
  • 期末数减期初数等于
  • 水果销售公司简介
  • 资产负债表上的资产是原值还是净值
  • 差旅费企业所得税扣除
  • 公司预支了然后来报销的帐怎么做?
  • 当期未开票过收入,以后开票怎么做会计分录
  • 增值税专票给客户的是第几联
  • 六月涉税提醒通知
  • 累计结转是什么意思
  • 销售应税产品分录
  • 收到畜禽无害化处罚通知
  • 商品进销差价主营业务收入
  • win11开始菜单怎么设置成左下角
  • 电脑经常蓝屏修复
  • 无形资产入账摊销
  • 生产型企业公司有哪些
  • 商贸公司商品品种规格多如何核算
  • 我开了一个物流公司,有人要开发票怎么办
  • 苹果手机无法加入WiFi
  • 房地产会计工资一般多少
  • 全网最详细的破解卡密软件教程[2021首发]
  • msgdlg.exe是什么意思
  • 政府的奖励金计入哪个科目
  • pctversion
  • wordpress功能介绍
  • 对出纳的要求
  • 小规模纳税人报税期是哪几个月
  • 企业生产车间发生的直接材料费用属于生产费用
  • mail命令详解
  • 唐山发生5.1级地震
  • 应交税费借方属于什么科目
  • 挂靠的公司替我们交的税款如何记账?
  • 织梦cms为什么不维护了
  • 个体户查账征收和核定征收哪个好
  • 存货报废进项税转出分录
  • 自然灾害的原因有哪些
  • 递延所得税负债大白话解释
  • 建筑安装业经营范围
  • 税审报告需要什么资料
  • 对供应商的罚款需要开票吗
  • 补交增值税税款怎么做账
  • 收到支持学校工作的短信怎么回复
  • 外经证先开票还是异地预缴税率
  • 微信收款怎样记账
  • 计入税金及附加借方的内容
  • 会计做账什么意思
  • 纳税申报怎么查
  • 公司应收票据增加意味着什么
  • 安全升级
  • sql server in()
  • vista桌面为什么不能登陆
  • solaris更改文件权限
  • bp程序是什么意思
  • wsinspector.exe是什么进程
  • centos5.5加固
  • win8.1技巧
  • kinect unity开发
  • android framework.jar
  • 批处理文件是脚本吗
  • JavaScript instanceof 的使用方法示例介绍
  • socket教程pdf
  • Errors running builder 'Android Resource Manager' on Project java.lang.NullPointerException
  • shell脚本cut -d
  • Unity3D的MonoBehaviour可重写函数
  • unity 3d ui
  • 全面解析A型天秤座男
  • java jsonstring
  • 蛋哥的日常
  • javascript编写
  • 基于springboot的毕设
  • 详解Python中的Descriptor描述符类
  • 合肥房子契税退税
  • 查博士报告怎么查真假
  • 为什么医保卡显示无效
  • 病历证明在医院保存多久
  • 上海《居住登记凭证》
  • 河南省税务局领导班子名单
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

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

    友情链接: 武汉网站建设