Android集成微信支付(适合小白)
来源:互联网 发布:什么算视听节目知乎 编辑:程序博客网 时间:2024/06/05 04:34
一:首先是申请微信支付的一系列号
这个方面不是太懂.具体申请流程不清楚.但是里边跟客户端有关联的是appid.还有包名和签名.
签名要确定使用公司签名,包名要提前设定好名字. 你写的程序包名和打包签名必须和申请是一致.否则就出现直接跳到回调结果页并返回-1;
注意:包名和签名是可以申请改的,但是生效会等一段时间.一般一个小时之内吧.
客户端常用的方式是所有支付接口需要的数据都由服务器返回,不需要自己做任何处理.
1.调用支付接口一共需要7个参数,而且要先注册app到微信
//注册IWXAPI msgApi = WXAPIFactory.createWXAPI(this, "wxaa07d565fae73295");msgApi.registerApp("wxaa07d565fae73295");//支付PayReq request = new PayReq();request.appId = "wxaa07d565fae73295";//写死 应用APPIDrequest.partnerId = "1321746201";//写死 微信支付商户号request.prepayId= prepayid;//预支付交易会话IDrequest.packageValue = "Sign=WXPay";//微信固定值 扩展字段request.nonceStr= noncestr;//随机字符串request.timeStamp= timestamp;//时间戳request.sign= sign;//签名msgApi.sendReq(request);
2.然后是回调界面
参照微信SDK Sample,在net.sourceforge.simcpux.wxapi包路径中实现WXPayEntryActivity类(包名或类名不一致会造成无法回调),
在WXPayEntryActivity类中实现onResp 函数,支付完成后,微信APP会返回到商户APP并回调onResp函数,开发者需要在该函数中接收通知,
判断返回错误码,如果支付成功则去后台查询支付结果再展示用户 实际支付结果。注意一定不能以客户端返回作为用户支付的结果,
应以服务器端的接收的支付通知或查询API返回的结果为准
public class WXPayEntryActivity extends Activity implements IWXAPIEventHandler{private static final String TAG = "MicroMsg.SDKSample.WXPayEntryActivity"; private IWXAPI api; @Override public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.pay_result); api = WXAPIFactory.createWXAPI(this, "wxaa07d565fae73295"); api.handleIntent(getIntent(), this); }@Overrideprotected void onNewIntent(Intent intent) {super.onNewIntent(intent);setIntent(intent); api.handleIntent(intent, this);}@Overridepublic void onReq(BaseReq req) {}@Overridepublic void onResp(BaseResp resp) {Log.d(TAG, "onPayFinish, errCode = " + resp.errCode);if (resp.getType() == ConstantsAPI.COMMAND_PAY_BY_WX) {AlertDialog.Builder builder = new AlertDialog.Builder(this);builder.setTitle("回调结果");builder.setMessage(String.valueOf(resp.errCode));builder.show();}}}
注意这里的回调activity最好是辅助官方demo,然后做删除,修改.否则有可能出现能打开回调界面,但是没有返回值得情况
3.添加微信jar包.(这其实是第一步,之前忘了说)
4.修改清单文件.按照官方Demo修改.
5.对于官方demo的解释.
只能支付成功一次,是因为你签名的debugkey不是官方Demo的debugkey. 解决方式是在eclipse的windows>preferences>android>build下的
custom debug keystore中选 择微信官方Demo的debugkeystore
有问题请私q我1052374416.太深的问题我不会,简单的可以商讨.
- Android集成微信支付(适合小白)
- android集成微信支付
- android集成微信支付
- Android 微信支付集成
- android集成微信支付
- Android集成微信支付
- Android微信支付集成
- Android集成微信支付
- Android集成微信支付
- Android 集成微信支付
- Android集成微信支付
- Android集成微信支付
- android集成微信支付
- Android集成微信支付
- Android集成微信支付
- Android 微信支付集成
- Android 集成微信支付
- android集成支付,支付宝,微信
- SharePreference之记录应用的使用次数
- POJ 3278 Catch That Cow
- 微信上最近奥运会很火很炫的广告是怎么实现的
- MFC + 自定义类的序列化与反序列化
- 先进驾驶辅助系统ADAS接口协议ADASIS v2简介
- Android集成微信支付(适合小白)
- UITableVIew优化
- 编码练习——Java-1-基础
- (Java)常用排序
- 微服务实战(二):使用API Gateway
- Bootstrap使用Tab和dropdown实现导航下拉菜单效果
- ansj源码浅析1
- HDU 1242 Rescue
- 【计算机组成原理】存储器