IWXAPI的使用,发布分享和支付
今天看代码,看到以前项目的微信支付功能,想做一下记录
首先是在application类里面定义
-
public static IWXAPI MSGAPI;
-
public static final String WX_APPID="xxxxxxxxxxxxxxxxxxx";//你的应用从官方网站申请到的合法appId
将该app注册到微信
-
MSGAPI=WXAPIFactory.createWXAPI(applicationContext,WX_APPID,false);
-
MSGAPI.registerApp(WX_APPID);
首先支付功能
-
if(!ApplicationXpClient.MSGAPI.isWXAppInstalled()){
-
Log.d("weixinPay","未安装微信");
-
return;
-
}
-
if(!ApplicationXpClient.MSGAPI.isWXAppSupportAPI()){
-
Log.d("weixinPay","版本不支持");
-
return;
-
}
-
PayReq request=new PayReq();//weixinPayData是后台返回的类
-
request.appId=ApplicationXpClient.WX_APPID;
-
request.partnerId="1387300802";
-
request.prepayId=weixinPayData.getPrepay_id();
-
request.packageValue="Sign=WXPay";
-
request.nonceStr=weixinPayData.getNonce_str();
-
request.timeStamp=weixinPayData.getDateTime();
-
request.sign=weixinPayData.getSign();
-
ApplicationXpClient.MSGAPI.sendReq(request);
然后是分享功能
-
int WX_THUMB_SIZE=120;
-
if(!ApplicationXpClient.MSGAPI.isWXAppInstalled()){
-
Log.d("weixinPay","未安装微信");
-
return;
-
}
-
if(!ApplicationXpClient.MSGAPI.isWXAppSupportAPI()){
-
Log.d("weixinPay","版本不支持");
-
return;
-
}
-
//初始化一个WXWebpageObject对象,填写url
-
WXWebpageObject webpage=new WXWebpageObject();
-
-
webpage.webpageUrl="www.pooai.com";//这里用小普马桶官网做推广
-
-
//用WXWebpageObject对象初始化一个WXMediaMessage对象,填写标题、描述
-
WXMediaMessage msg=new WXMediaMessage(webpage);
-
msg.title="小普未来科技";
-
msg.description="一款来自未来的云健康智能马桶";
-
Bitmap thumb=BitmapFactory.decodeResource(getResources(),R.drawable.xiaopu);
-
Bitmap thumbBmp=Bitmap.createScaledBitmap(thumb,WX_THUMB_SIZE,WX_THUMB_SIZE,true);
-
thumb.recycle();
-
msg.thumbData=bmpToByteArray(thumbBmp,true);
-
-
//构造一个Req
-
SendMessageToWX.Req req=new SendMessageToWX.Req();
-
req.transaction=String.valueOf(System.currentTimeMillis());
-
req.message=msg;
-
req.scene=SendMessageToWX.Req.WXSceneSession;//分享给朋友
-
//req.scene = SendMessageToWX.Req.WXSceneTimeline;//分享到朋友圈
-
ApplicationXpClient.MSGAPI.sendReq(req);
-
-
public static byte[]bmpToByteArray(final Bitmap bmp,final boolean needRecycle){
-
ByteArrayOutputStream output=new ByteArrayOutputStream();
-
bmp.compress(CompressFormat.PNG,100,output);
-
if(needRecycle){
-
bmp.recycle();
-
}
-
byte[]result=output.toByteArray();
-
try{
-
output.close();
-
}catch(Exception e){
-
e.printStackTrace();
-
}
-
return result;
-
}
IWXAPI的使用,发布分享和支付的更多相关文章
- Android调用微信登陆、分享、支付
前言:用了微信sdk各种痛苦,感觉比qq sdk调用麻烦多了,回调过于麻烦,还必须要在指定包名下的actvity进行回调,所以我在这里写一篇博客,有这个需求的朋友可以借鉴一下,以后自己别的项目有用到也 ...
- 【原创分享·微信支付】 C# MVC 微信支付教程系列之扫码支付
微信支付教程系列之扫码支付 今天,我们来一起探讨一下这个微信扫码支付.何为扫码支付呢?这里面,扫的码就是二维码了,就是我们经常扫一扫的那种二维码图片,例如,我们自己添 ...
- 【原创分享·微信支付】 C# MVC 微信支付教程系列之公众号支付
微信支付教程系列之公众号支付 今天,我们接着讲微信支付的系列教程,前面,我们讲了这个微信红包和扫码支付.现在,我们讲讲这个公众号支付.公众号支付的应用环境常见的用户通过公众号,然后再通 ...
- 【原创分享·微信支付】C# MVC 微信支付之微信模板消息推送
微信支付之微信模板消息推送 今天我要跟大家分享的是“模板消息”的推送,这玩意呢,你说用途嘛,那还是真真的牛逼呐.原因在哪?就是因为它是依赖微信生存的呀,所以他能不 ...
- Android微信登录、分享、支付
转载需要著名出处: http://blog.csdn.net/lowprofile_coding/article/details/78004224 之前写过微信登录分享支付第一版: http://bl ...
- 【分享·微信支付】 C# MVC 微信支付教程系列之公众号支付
微信支付教程系列之公众号支付 今天,我们接着讲微信支付的系列教程,前面,我们讲了这个微信红包和扫码支付.现在,我们讲讲这个公众号支付.公众号支付的应用环境常见的用户通过公众号,然后 ...
- 【原创分享·支付宝支付】HBuilder打包APP调用支付宝客户端支付
前言 最近有点空余时间,所以,就研究了一下APP支付.前面很早就搞完APP的微信支付了,但是由于时间上和应用上的情况,支付宝一直没空去研究.然后等我空了的时候,发现支付宝居然升级了支付逻辑,虽然目前还 ...
- 【原创分享·微信支付】C# MVC 微信支付教程系列之现金红包
微信支付教程系列之现金红包 最近最弄这个微信支付的功能,然后扫码.公众号支付,这些都做了,闲着无聊,就看了看微信支付的其他功能,发现还有一个叫“现金红包”的玩意,想 ...
- 解决Axure发布分享预览的3个方法
公司的同事制作的一个产品原型,要发给我,我当时正在客户这里,电脑上并没有Axure,客户又催得急,感到一阵无奈.这次回来之后,经过一番摸索,发现还是有办法的.这里给大家分享一下Axure发布分享预览的 ...
随机推荐
- CC2530定时器使用
定时器学习 文件夹 说明 依据数据手冊可知CC2530总共同拥有4个定时器,可是定时器2被系统占用,可用的仅仅有三个,分别为定时器1/3/4 Timer在协议栈的代码位置为hal_timer ...
- Altium Designer画异型焊盘的步骤
注:如果要画的是过孔,就需要加入底层的
- promis:异步编程
promise对象用于延迟计算和异步计算:一个promise对象代表着一个还未完成,但预期将来完成的操作 Image.png Image.png 打印结果如下: <!DOCTYPE html&g ...
- 【Codeforces Round #443 (Div. 2) A】Borya's Diagnosis
[链接] 我是链接,点我呀:) [题意] 在这里输入题意 [题解] 模拟 [代码] #include <bits/stdc++.h> using namespace std; const ...
- AOP技术应用和研究--OOP
1,软件编程技术的发展 软件编程技术与程序设计语言是分不开的.过去的几十年中,程序设计语言对抽象机制的支持程度不断提高:从机器语言到汇编语言,到高级语言,再到面向对象语言.每一种新的程序设计语言的出现 ...
- ZOJ 1494 Climbing Worm 数学水题
http://acm.zju.edu.cn/onlinejudge/showProblem.do?problemId=494 题目大意: 一只蜗牛要从爬上n英寸高的地方,他速度为u每分钟,他爬完u需要 ...
- 魔兽争霸war3心得体会(二):狗转蜘蛛,DK光环+游侠二发
最近几周,勤奋地在QQ对战平台上,练习war3对战. 10年玩到14年初, 也玩了很多,主要是抱着"随便玩玩"的心态,结果也很显然,可以轻松打赢中等电脑,以及AI不够高的发狂的Hu ...
- 使用纯CSS3实现一个3D旋转的书本
有一些前沿的电商站点已经開始使用3D模型来展示商品并支持在线定制,而当中图书的展示是最为简单的一种, 无需复杂的建模过程,使用图片和CSS3的一些变换就可以实现更好的展示效果,简洁而有用. 书本的3D ...
- ios开发之图层与核心动画一:图层CALayer的认识
#import "ViewController.h" @interface ViewController () @property (weak, nonatomic) IBOutl ...
- 撸代码--类QQ聊天实现(基于linux 管道 信号 共享内存)
一:任务描写叙述 A,B两个进程通过管道通信,像曾经的互相聊天一样,然后A进程每次接收到的数据通过A1进程显示(一个新进程,用于显示A接收到的信息),A和A1间的数据传递採用共享内存,相应的有一个B1 ...