Android 微信支付 支付宝支付简单使用

微信支付:

1.添加依赖:

implementation 'com.tencent.mm.opensdk:wechat-sdk-android-with-mta:+'

2. 报名下建文件夹wxapi 

 

.

3.

我这里是有一个分享的回调 不用管那个   支付需要的是WXPayEntryActivity这个 

public class WXPayEntryActivity extends Activity implements IWXAPIEventHandler {private Context context = this;private IWXAPI api;@Overridepublic void onCreate(Bundle savedInstanceState) {super.onCreate(savedInstanceState);api = WXAPIFactory.createWXAPI(this, ConstUtils.WXID);api.handleIntent(getIntent(), this);}@Overrideprotected void onNewIntent(Intent intent) {super.onNewIntent(intent);setIntent(intent);api.handleIntent(intent, this);}@Overridepublic void onReq(BaseReq baseReq) {}@Overridepublic void onResp(BaseResp resp) {Log.e("=====", resp.errCode + "");if (resp.getType() == ConstantsAPI.COMMAND_PAY_BY_WX) {if (resp.errCode == 0) {Toast.makeText(this, "支付成功", Toast.LENGTH_LONG).show();} else {Toast.makeText(this, "支付失败", Toast.LENGTH_LONG).show();}finish();}}
}

4.在Androidmanifest中:

<activityandroid:name=".wxapi.WXPayEntryActivity"android:exported="true"android:launchMode="singleTop"><intent-filter><action android:name="android.intent.action.VIEW" /><category android:name="android.intent.category.DEFAULT" /><data android:scheme="你的APPID" /></intent-filter></activity>

5.调用

IWXAPI api = WXAPIFactory.createWXAPI(TestActivity.this, ConstUtils.WXID);//AppId
PayReq req = new PayReq();
req.appId = response.body().getAppid();
req.partnerId = response.body().getPartnerid();
req.prepayId = response.body().getPrepayid();
req.nonceStr = response.body().getNoncestr();
req.timeStamp = response.body().getTimestamp();
req.packageValue = "Sign=WXPay";
req.sign = response.body().getSign();//签名后天返回的
// 在支付之前,如果应用没有注册到微信,应该先调用IWXMsg.registerApp将应用注册到微信
api.registerApp(ConstUtils.WXID);
api.sendReq(req);

 

微信支付结束     其实都集成过好几次了   还是遇到了坑  后台那边选择了沙箱环境  转成为正式就没有问题了 

 

支付宝支付:

导入支付宝 SDK

下载地址:https://download.csdn.net/download/mr___xu/10906070  (或者到官网下载)

一、将 alipaySdk-15.5.7-20181023110917.aar 包放在您的应用工程的 libs 目录下(图片中文件名仅做示例,请以实际 SDK 文件名为准):

二、在您主项目的 build.gradle 中,添加下面的内容,将 libs 目录作为依赖仓库:

image

allprojects {repositories {// 添加下面的内容flatDir {dirs 'libs'}// ... jcenter() 等其他仓库}
}

三、在您 App Module 的 build.gradle 中,添加下面的内容,将支付宝 SDK 作为项目依赖:

image

dependencies {// 添加下面的内容compile (name: 'alipaySdk-15.5.7-20181023110917', ext: 'aar')}


至此,支付宝 SDK 开发资源导入完成。

申请运行时权限

android.permission.INTERNET
android.permission.ACCESS_NETWORK_STATE
android.permission.ACCESS_WIFI_STATE
android.permission.READ_PHONE_STATE
android.permission.WRITE_EXTERNAL_STORAGE

 

支付接口调用

PayTask对象主要为商户提供订单支付、查询功能,及获取当前开发包版本号。
获取PayTask支付对象调用支付(支付行为需要在独立的非ui线程中执行),代码示例:

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

 

支付结果获取和处理

调用pay方法支付后,将通过2种途径获得支付结果:

同步返回
商户应用客户端通过当前调用支付的Activity的Handler对象,通过它的回调函数获取支付结果。(可参考alipay_demo实现)
代码示例:

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

异步通知
商户需要提供一个http协议的接口,包含在请求支付的入参中,其key对应notify_url。支付宝服务器在支付完成后,会以POST方式调用notify_url传输数据。

获取当前开发包版本号

调用PayTask对象的getVersion()方法查询。

代码示例:

PayTask payTask = new PayTask(activity);
String version = payTask.getVersion();

 

 

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.rhkb.cn/news/71479.html

如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

支付宝,微信在没网络的情况下还能支付,是如何实现的?需要什么支持?

上次,我去医院挂号的时候,在手机欠费没有网络的情况下,抱着试试看的心态打开了支付宝的付款码,挂号窗口的工作人员用扫码枪扫了一下,居然也扣款成功了。然后我就感觉很神奇,到底是怎么支付成功的。经过我咨询客服以及上网查询相关资料后,终于了解了这其中的奥妙,其实也…

第三方支付接入(微信,支付宝)

写在最前面 以下内容关于微信相关的&#xff0c;除了binarywang&#xff0c;个人认为都不要再用了。相比较王大哥的封装&#xff0c;我自己写的真是连弟弟都不如。 支付宝相关的&#xff0c;好久不用了&#xff0c;不知道还能不能工作。建议找创建时间比较新的文章来看。 关…

WooCommerce接入支付宝微信支付

WooCommerce接入支付宝微信支付 前言安装支付宝插件&#xff08;方法一&#xff09;安装配置获取注册信息 安装支付宝插件&#xff08;方法二&#xff09;安装微信支付插件下载及安装获取微信公众号APPID&#xff0c;微信支付密钥获取微信公众号的AppID&#xff08;应用ID&…

Android接入支付宝和微信支付

本文首发于公众号“AntDream”&#xff0c;欢迎微信搜索“AntDream”或扫描文章底部二维码关注&#xff0c;和我一起每天进步一点点 前言 很多APP都需要支付功能&#xff0c;国内一般就是支付宝和微信了。目前这2种接入方式对于APP端来说都已经比较方便了&#xff0c;因为大部…

微信推送和支付宝付款接口的使用

我们在开发的过程中经常会碰到调用微信或者支付宝接口进行付款&#xff0c;付款完成之后&#xff0c;如果用户绑定了我的账号&#xff0c;我只要有活动了&#xff0c;就要给这个关注我的用户推动消息&#xff0c;让用户知道&#xff0c;比如说&#xff0c;我们经常会关注一些公…

网页调起支付宝付款和微信付款

网页调起支付宝付款和微信付款 昨天在指导客户制作付款网页的时候写了部分说明文档&#xff0c;觉得其中有很多对第一次接触这方面的人能有所帮助&#xff0c;在此分享一下 调起付款的步骤 1.获取微信code&#xff08;支付宝是auth_code&#xff0c;以下统称code) 不论是微…

个人如何接入支付宝或者微信支付等支付接口

企业途径&#xff1a;直接注册一个有资质的公司&#xff0c;并把工商局下发的企业许可证传给支付宝或者微信&#xff0c;让它们进行资质审核认证&#xff0c;如果微信或者支付宝觉得你的资质足够跟他们合作了&#xff08;整体来说很困难&#xff0c;不怎么容易达到足够的资质&a…

设计聊天机器人,5个误区小心别踩

设计聊天机器人&#xff0c;5个误区小心别踩&#xff01; 最近一段时间&#xff0c;各种AI对话工具大火&#xff0c;海外有ChatGPT&#xff0c;国内有百度下面的文心一言。越来越多人开始将智能工具搬到了自己的产品里。 而市场上有很多聊天工具都有自动化的功能&#xff0c;虽…

世界上最复杂的函数_巨蟹座是世界上最懒的星座。

01 巨蟹座是世界上最懒的星座。 1、世界上最懒的星座&#xff0c;别人整点拖延症&#xff0c;巨蟹整年拖延症。 让ta学习、工作、运动、洗头的最好方式是拿枪顶脑袋。 2、自我保护意识无比强&#xff01; 敏感排行居首位&#xff01; 自己说的话百般酝酿&#xff0c;别人说的话…

巨蟹座适合计算机应用和文秘,业务能力强 适合当秘书的星座

十二星座中&#xff0c;每种星座擅长的领域都不一样。有些人适合当老板&#xff0c;有些人适合当员工&#xff0c;有些人适合当秘书。一般来说&#xff0c;秘书是一个非常难做的位置&#xff0c;甚至比老板和员工还要辛苦。不过&#xff0c;对于下面这几个星座来说&#xff0c;…

巨蟹座 55e外表达2000度 火山活泼岩浆遍布

巨蟹座 55e外表达2000度 火山活泼岩浆遍布 这个发明暗示巨蟹座 55e这个超级地球的外表十分杂乱&#xff0c;猛烈的火山喷发招致熔岩流遍及寰球&#xff0c;全部地表大局部被掩盖着滚烫的火山喷发物。假如巨蟹座 55e 与木卫一进行对照&#xff0c;那可以巨蟹座 55e 更“绚烂”一…

计算机专业巨蟹座男生,巨蟹座男生适合的职业

巨蟹座男生适合的职业 巨蟹座是一个重视生活细节的星座&#xff0c;只要和生活有关的事物都会引起蟹子的重视。虽然做事低调的性格使蟹子更喜欢从事一些非前线的工作&#xff0c;但懂得如何掌握人心&#xff0c;在职场上往往也最容易展现人事处理的才干。所以蟹子最适合服务业&…

新媒体运营胡耀文教程:短视频脚本的3个套路,新手也能做爆款

你是否觉得&#xff0c;看短视频比看电视还过瘾&#xff1f;劲爆的画面、巧妙的神转折、不拖沓的剧情、嗨爆的BGM…都足以让人“忘却人间”。 而这一系列设计的背后&#xff0c;都承载于一个重要部分&#xff1a;短视频脚本。 就像拍电视剧、电影一样&#xff0c;短视频脚本是…

纯干货!短视频脚本怎么写?零基础新手小白也能写好短视频脚本!【覃小龙课堂】

hi&#xff0c;我是你的老朋友兼顾问&#xff1a;覃小龙&#xff0c;您可以叫我覃总。今天给您分享我做影视剪辑的一些经验方法&#xff0c;零粉丝也能做&#xff0c;主题名为&#xff1a; 纯干货&#xff01;短视频脚本怎么写&#xff0c;零基础也能写好短视频脚本 在写脚本以…

短视频脚本怎么写?6个套路

做短视频的基础就是脚本&#xff0c;脚本是创作的基石&#xff0c;是贯穿这个视频始末的逻辑。那么&#xff0c;短视频脚本怎么做呢&#xff1f;其实&#xff0c;在拍摄脚本里面&#xff0c;我们可以把所有的东西拆分为以下 6 个要素&#xff1a; 01 镜头景别 镜头分为远景、全…

实现排序的几种方式/sorted(o1,o2)

1 实现排序的几种方式 首先我们先看代码 List<Person> personList new ArrayList<>();personList.add(new Person("王一",1));personList.add(new Person("王二",2));personList.add(new Person("王五",5));personList.add(new Per…

经典十大排序算法(含升序降序,基数排序含负数排序)【Java版完整代码】【建议收藏系列】

经典十大排序算法【Java版完整代码】 写在前面的话十大排序算法对比冒泡排序快速排序直接选择排序堆排序归并排序插入排序希尔排序计数排序桶排序基数排序完整测试类 写在前面的话 虽然已经有很多人总结过这十大排序算法&#xff0c;优秀的文章也不少&#xff0c;但是Java完整版…

使用O2OA二次开发搭建企业办公平台(一)平台部署篇:平台下载和部署

转载&#xff1a;https://my.oschina.net/u/3931542/blog/2209110 本博客为O2OA系列教程&#xff0c;教程目录和各章节天梯将在连载完后更新。 服务器下载和安装 1、服务器安装包下载 访问http://www.o2oa.io网站&#xff0c;如下图所示: 在网站顶部导航里点击下载&#xff0…

O2PLS(绘制载荷图)--R

##绘制载荷图## gene_loading <- as.data.frame(fit0$W.) meta_loading <- as.data.frame(fit0$C.) colnames(gene_loading) <- c("pq1","pq2") colnames(meta_loading) <- c("pq1","pq2") #添加新的一列&#xff0c;按组…

Java8 Stream:2万字20个实例,玩转集合的筛选、归约、分组、聚合

Java8 Stream 1 Stream概述2 Stream的创建3 Stream的使用案例使用的员工类3.1 遍历/匹配&#xff08;foreach/find/match&#xff09;3.2 筛选&#xff08;filter&#xff09;3.3 聚合&#xff08;max/min/count)3.4 映射(map/flatMap)3.5 归约(reduce)3.6 收集(collect)3.6.1 …