也不算个大坑,就申请过程会麻烦,而且要审核。
代码部分
showModal用于查看打包后的查错,因为打包后看不了控制台输出
wxlogin(){
var _this=this
uni.getProvider({
service: 'oauth',
success: function(res) {
// console.log(res.provider);
// uni.showModal({
// title:'getProvider成功',
// content:JSON.stringify(res)
// })
//支持微信、qq和微博等
if (~res.provider.indexOf('weixin')) {
uni.login({
provider: 'weixin',
success: function(loginRes) {
// console.log('-------获取openid(unionid)-----');
// console.log(JSON.stringify(loginRes));
// uni.showModal({
// title:'login成功',
// content:JSON.stringify(loginRes)
// })
// 获取用户信息
uni.getUserInfo({
provider: 'weixin',
success: function(infoRes) {
console.log('-------获取微信用户所有-----');
console.log(JSON.stringify(infoRes));
// uni.showModal({
// title:'getuserinfo成功',
// content:JSON.stringify(infoRes)
// })
},
fail: function(infoRes){
// uni.showModal({
// title:'getuserinfo失败',
// content:JSON.stringify(infoRes)
// })
}
});
},
fail: function(res){
// uni.showModal({
// title:'login失败',
// content:JSON.stringify(res)
// })
}
});
}
},
fail: function(res){
// uni.showModal({
// title:'getProvider失败',
// content:JSON.stringify(res)
// })
}
});
},
真机调试时由于使用HbuildX的证书和微信开放应用信息,可以直接用
打包后就不是了,所以需要完成下面全部步骤
安卓应用签名证书
这个好像没什么好写的,但是为了凑点字数还是写下来8
上oracle下载jre https://www.oracle.com/java/technologies/javase-downloads.html
cmd进入安装目录的bin文件夹
默认安装路径C:\Program Files\Java\ 所以输入
cd C:\Program Files\Java\jre1.8.0_91\bin
生成证书
keytool -genkey -alias testalias -keyalg RSA -keysize 2048 -validity 36500 -keystore test.keystore
testalias
是证书别名,可修改为自己想设置的字符,建议使用英文字母和数字test.keystore
是证书文件名称,可修改为自己想设置的文件名称,也可以指定完整文件路径
剩下看提示自己填,有中文过程提示了现在
需要记住的两个东西:证书别名(如上testalias),密钥库口令,这两要在APP打包时输入
生成证书命令过程完成后,会在bin目录下生成一个keystore文件,找不到就右上角搜索
然后进uni-app里打包,只说云打包(因为老板同意了),离线打包看别的文
选中使用自有证书,填上别名和密码,选择证书文件,即可
记住自己的包名,下面用到
打包出来的应用拿自己手机装一下,然后下另一个获取签名的工具
https://github.com/huiger/GenSignature/raw/master/raw/app-release.apk
使用这个工具输入包名,得到的签名字符串准备填入微信开放平台应用信息,见下
微信开放平台申请应用
先注册个号 https://open.weixin.qq.com/cgi-bin/readtemplate?t=regist/regist_tmpl&lang=zh_CN
注意:这个一般公司邮箱来注册,没有自己整个不是没绑过私人微信的
然后回到首页去申请移动应用,填应用资料,包名和签名见上,其他看着填即可
审核大概需要两三天(非工作日),审核完成后会得到appid和secret密钥,填下边
UNIAPP的manifest配置
点开manifest.json,APP模块配置
勾选OAuth(登录鉴权),勾选微信登录
appid和appsecret分别填入微信开放平台的应用的信息,见上
填完打包,一切都大功告成