支付宝支付官网地址: 打开官网
服务器端如何拼接Orderinfo所需参数请看这篇文章。打开链接

安卓app集成阿里支付流程:

  • 步骤一:下载aar和demo,并将aar添加到安卓项目依赖里。点击查看如何添加。
  • 步骤二:根据官方提供的demo准备所需必备支付宝支付的参数和java文件。
    • PayDemoActivity: (主要运行的java文件)
    • H5PayDemoActivity (网页支付宝)
    • PayResult (支付结果)
    • AuthResult (授权)
    • Base64 (加密)安卓端不用看
    • SignUtils (签名)安卓端不用看
    • ExternalFragment (demo的布局)不需要
  • 步骤三 注意事项,权限,网络清单:
    • UI界面规范,最低过审要求
    • 配置网络清单
    • Mainfest.xml权限添加
    • 添加混淆
  • 集成中各种报错代码的解决办法,请看这篇文章:

步骤一:下载aar和demo,并将aar添加到安卓项目依赖里。点击查看如何添加。

阿里支付demo和aar下载地址: 打开下载.


解压此zip -> 可以看到里面有Android_Demo和Android_SDK,

将Android_SDK里的aar文件放入到安卓项目libs文件里,并添加为依赖即可。
不知道如何添加依赖?查看此文章:

如何添加aar依赖到安卓: 点击跳转.


步骤二:根据官方提供的demo准备所需必备支付宝支付的参数和java文件。

打开Android_Demo

支付宝支付的sdk里写了一大堆参数东西(APPID PID TARGET_ID 等等),这些东西都是后端进行拼接产品信息等操作。
为了信息安全,安卓端不需要做任何事,仅仅需要从后端获取 orderInfo 即可。(orderInfo类型为字符串)

想了解orderInfo怎么拼接的,还有参数怎么配置,可以查看这篇文章。有详解。打开链接

PayDemoActivity: (主要运行的java文件)

将该java中以下4个与安卓端支付功能相关的代码方法移植到你的项目中。

  1. private Handler mHandler = new Handler() 消息传递
  2. private static void showAlert(Context ctx, String info) 提示框
  3. private static void showAlert(Context ctx, String info, DialogInterface.OnDismissListener onDismiss) 提示框
  4. public void payV2(View v) 点击按钮,调用支付业务。 该方法我们只需payRunnable即可,其他的都是关于后端拼接产品的信息。

alipay.payV2 方法调用支付接口,等待用户进行操作结束后,会返回map值,传递到result里。mHandler.sendMessage(msg)会将map信息传递到private Handler mHandler = new Handler() 方法中进行处理。

注意:这里的 PayDemoActivity.this 参数,要改成你自己的MainActivity

获取到的orderInfo格式大致应为这样的 (忽略 “+” 号,这里我空格了,方便查看)

  1. 如果传递的orderInfo不正确,会有各种提示报错代码,如何解决可以看另一篇文章。(待写)

H5PayDemoActivity (网页支付宝)

在 PayDemoActivity 的 alipay.payV2方法里已经做了兼容,如果用户没有下载支付宝app,那么则会走该h5页面的支付流程。

该java是支付宝放在demo里的演示,不需要放在你的项目中。

PayResult (支付结果)

将该java整个复制到你的项目中即可。

AuthResult (授权)

将该java整个复制到你的项目中即可。

Base64 (加密)安卓端不用看

SignUtils (签名)安卓端不用看

ExternalFragment (demo的布局)不需要


步骤三 注意事项,权限,网络清单:

UI界面规范,最低过审要求

配置网络清单

  <domain includeSubdomains="true">tfs.alipayobjects.com</domain><domain includeSubdomains="true">mobilegw.alipay.com</domain><trust-anchors><certificates src="system" /><certificates src="user" /></trust-anchors>

不知道如何配置网络清单?请看这篇文章:跳转

Mainfest.xml权限添加

1.在Manifest.xml文件中添加

<uses-permission android:name="android.permission.INTERNET" />
<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" />
<uses-permission android:name="android.permission.ACCESS_WIFI_STATE" />

添加混淆

-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 *;}

集成中各种报错代码的解决办法,请看这篇文章:

错误代码4000,6004等等问题。打开链接

安卓-Android如何集成支付宝支付(集成阿里支付)详解。Android接入alipay支付相关推荐

  1. android中接口的作用是什么意思,详解Android接口Interface的使用和意义

    本文介绍是Android的一个重要的东西,接口Interface,详解两个方面: (1)Java是继承的,接口Interface是可以多个的,恰恰弥补了这个缺点. (2)回调,接口Interface里 ...

  2. 安卓增删改查用sql语句号码_详解Android中一些SQLite的增删改查操作

    在Android开发中经常要涉及到对数据的操作.Android本身提供了四种数据存储方式.包括:SharePreference,SQLite,Content Provider,File. 在Andro ...

  3. android按钮防止重复点击事件,实例详解Android解决按钮重复点击问题

    为了防止用户或者测试MM疯狂的点击某个button,写个方法防止按钮连续点击.具体实例代码如下所示: public class BaseActivity extends Activity { prot ...

  4. android 华为sd卡路径,(科普)详解Android系统SD卡各类文件夹名称

    该楼层疑似违规已被系统折叠 隐藏此楼查看此楼 系统数据类--系统文件存储相关文件夹 1..android_secure:官方app2sd的产物,存储了相关的软件使用认证验证,删除之后SD卡中的软件将无 ...

  5. Android四大组件之bindService源码实现详解

        Android四大组件之bindService源码实现详解 Android四大组件源码实现详解系列博客目录: Android应用进程创建流程大揭秘 Android四大组件之bindServic ...

  6. 支付接口教程,详解支付宝接口(二)

    支付宝的接口向来集成过程都让人觉得比较舒服,只有APP支付相对复杂,但也只是配置上复杂一些,只要清楚原理相信也不是什么难事.下面是以前介绍双钥加密原理的传送门: 支付接口教程特别篇,公钥与私钥,双钥加 ...

  7. 使用Gin框架集成JWT,源码、详解、面试问题

    使用Gin框架集成JWT,源码.详解.面试问题 一.什么是JWT Json web token (JWT), 是为了在网络应用环境间传递声明而执行的一种基于JSON的开放标准((RFC 7519). ...

  8. java isight zmf_isight集成catia和abaqus,nastran流程详解

    isight集成catia和abaqus,nastran流程详解 CAD软件中参数化建模,导入有限元软件中计算各个工况,isight根据计算结果调整模型参数,反复迭代计算的过程是尺寸优化的典型问题~ ...

  9. Spring MVC+Spring+Mybatis实现支付宝支付功能(图文详解)(转载)

    Spring MVC+Spring+Mybatis实现支付宝支付功能(图文详解) 前言 本教程详细介绍了如何使用ssm框架实现支付宝支付功能.本文章分为两大部分,分别是「支付宝测试环境代码测试」和「将 ...

  10. 怎样进入android模式,安卓手机如何进入Recovery模式的通用方式详解

    2014-12-12 15:24:16 安卓手机如何进入Recovery模式的通用方式详解 标签:安卓 Recovery模式 教程 Recovery模式是什么?这里说的Recovery模式主要指的是安 ...

最新文章

  1. 在ASP.NET 2.0中操作数据教程系列
  2. BootStrap自带的图标
  3. 形参与实参的区别---java基础
  4. 如何用Camtasia给视频添加马赛克?
  5. 发现三个很赞的英语学习网站
  6. CVI通过ODBC连接数据库的方法
  7. 苹果Mac突然没有声音,3 种方法快速检测
  8. JavaWEB一:HTML
  9. 解决ubuntu 18.04平台上thinkpad小红点TrackPoint左键随机失效的问题(by quqi99)
  10. 微风:PS抠图方法大全
  11. 工欲善其事,必先利其器 - 修炼Android Studio操作技巧
  12. 游戏中的镜头语言和应用
  13. linux服务器IP伪造,Linux服务器间同网段IP伪装端口映射
  14. max3490esa_MAX3096ESE+T_maxim芯片后缀tg16是什么意思
  15. 3D打印设备的全球与中国市场2022-2028年:技术、参与者、趋势、市场规模及占有率研究报告
  16. 同指数幂相减公式_同底指数加减运算法则
  17. 程序员的vbs强势表白
  18. 扣除非经常性损益后的归属母公司所有者的净利润怎么算
  19. 中国计算机发展的历史和现状
  20. 华为鸿蒙手机什么时候上市5g,5g手机什么时候上市 华为5g手机何时上市?

热门文章

  1. ABAP EWM PRDO交货单过账
  2. mysql pid文件作用_pid文件的作用
  3. 观《特种部队2:全面反击》有感
  4. 【报告分享】2021年中国直播电商产业研究报告-CIECC(附下载)
  5. 把标准C++视为一个新语言
  6. c++实现线程池(真实入门!)
  7. 人性的弱点全集的评论
  8. 深挖洞,广积粮,缓称王
  9. SNR与Eb/N0的关系以及计算
  10. JSON数据和JAVA对象之间的转换