群里有人问我微信支付,这里写出来给他看,妈的最烦前文瞎墨迹的,直接上代码
1.到微信开发平台下载 https://pay.weixin.qq.com/wiki/doc/api/app/app.php?chapter=11_1,下载demo包.
2.解压出来支付要用到的jar包 libammsdk.jar
3.将libammsdk.jar 导入到studio的lib内
4.添加权限
<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"/>
<uses-permission android:name="android.permission.READ_PHONE_STATE"/>
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE"/>
5.在包名下新建 waapi包,并创建支付回调页面 WXPayEntryActivity
6.配置AndroidManifest.xml 文件
(附加代码 )
<!-- 微信支付 回调界面-->
<activity android:name=".wxapi.WXPayEntryActivity"
android:exported="true"
android:launchMode="singleTop" />
7.通过接口获取支付所需参数,然后调起微信支付( BaseApplication.WEIXIN_APP_ID,就是微信支付的appid,由微信平台给出,其他参数均有请求服务器,服务器返回给出)
8.build.gradle内在android节点下配置打包签名
运行一下即可调起微信支付界面!!!!!!
最后强调一下签名文件必须配置,否则或支付失败(当然你也可以打包运行再调起,同样的效果)!!!
最后强调一下签名文件必须配置,否则或支付失败(当然你也可以打包运行再调起,同样的效果)!!!
最后强调一下签名文件必须配置,否则或支付失败(当然你也可以打包运行再调起,同样的效果)!!重要的事情说三遍
最后附加一个支付回调界面的处理结果
实现接口
implements IWXAPIEventHandler
处理回调
protected void initData() { titleName.setText("订单支付结果"); api = WXAPIFactory.createWXAPI(this, BaseApplication.WEIXIN_APP_ID); api.handleIntent(getIntent(), this); } @Override protected void onNewIntent(Intent intent) { super.onNewIntent(intent); setIntent(intent); api.handleIntent(intent, this); }
@Override public void onResp(BaseResp baseResp) { if (baseResp.getType() == ConstantsAPI.COMMAND_PAY_BY_WX) { if (baseResp.errCode==0){ ly_success.setVisibility(View.VISIBLE); ly_cancel.setVisibility(View.GONE); ig_bg.setImageResource(R.drawable.ig_zhifusuccess_bg); ig_zhifu_status.setImageResource(R.drawable.ig_zhifusuccess); } if (baseResp.errCode==-2){ ly_success.setVisibility(View.GONE); ly_cancel.setVisibility(View.VISIBLE); ig_bg.setBackgroundResource(R.drawable.ig_quxiao_bg); ig_zhifu_status.setImageResource(R.drawable.ig_order_quxiao); } } }
(群里的兄弟,看不明白,直接私聊我啊,我帮你)
(群里的兄弟,看不明白,直接私聊我啊,我帮你)
(群里的兄弟,看不明白,直接私聊我啊,我帮你)