- 61004:access clientip is not registered requestIP?
调用接口 https://api.weixin.qq.com/cgi-bin/component/api_query_auth?component_access_token= 报 {"errcode":61004,"errmsg":"access clientip is not registered requestIP: 47.106.*.* rid: 660ba237-538c44c5-60ccb7f3"} 这个IP是已经加上了白名单里面,而且在授权时,有的小程序授权调用这个接口不会报这个错,有的又不会,都是同一台机器调用 [图片]
04-02 - 微信开放标签wx-open-launch-app点击无反应?任何弹框都唤醒不起来
服务号已配置JS接口安全域名已配置js-sdk确定是1.6.0 wx.config中openTagList已配置 openTagList: ["wx-open-launch-app"]ios/android已配置相应配置appid确定是移动端appidextinfo已传值 为string现在的问题是: 点击wx-open-launch-app 对应的事件,没有任何弹窗,不走launch,不走error,控制台不报任何错误,安卓和ios均无法调起 [图片] [图片] [图片] 在生产环境微信浏览器中,会生成一个iframe,点击整个标签,无法触发任何事件,如图1, 在devtools调试手动删除这个iframe,可以输出结果,但无任何跳转弹窗 [图片] [图片][图片]可以输出结果,但无任何弹框,ios/安卓均是这种情况
2023-03-24 - 个人版订阅号添加自定义菜单提示 “链接内容不属于当前公众号”,这是为什么?
[图片]
01-24 - wx.config 提示报错 noPermissionJsApi["chooseImage"]?
个人版订阅号,wx.config 获取选择图片的授权是提示 noPermissionJsApi["chooseImage"] 但是 errMsg 显示 config:ok
2022-06-17 - 香港公司主体是否可以接入微信支付?实现国内用户在线下单的费用支付到香港账户?
香港公司主体是否可以接入微信支付?实现国内用户在线下单的费用支付到香港账户。 如果可以,申请入口在哪里?
01-23 - 小程序webview内嵌H5,h5详情页返回列表页时(ios不刷新、安卓刷新)的原因?
请问小程序基础库是有什么变动吗,为什么我们小程序内嵌的H5(weex项目降级后的H5),从H5的首页跳转到列表页,再跳转到详情页,然后从详情页返回列表页时,为什么ios上不刷新,安卓上刷新?
2023-07-26 - vue中使用wx-open-launch-weapp开放标签按钮不显示问题
先说明下本人不是专业做前端的,出于项目原因来研究一下微信公众号跳转小程序的功能,其中许多的代码运行流程原理及代码解析过程我并不了解,好在经过两天的尝试终于可以跳转了。在此总结一下几个需要注意的事项。 因为我们项目是已经上线的项目,所以微信公号的认证和js域名绑定都是好的,前期的环境准备我并没有操心。 最开始我是照着微信的开发文档搞的,代码都写完了,丢到正式环境真机测试,按钮没有显示。网上查了很多信息都说是微信签名握手那块有问题,查阅了很多资料,看了很多的帖子大家说的都差不多,最后还是在微信的官方文档上找到了按钮不显示的答案。 微信官方开放标签使用文档地址 https://developers.weixin.qq.com/doc/offiaccount/OA_Web_Apps/Wechat_Open_Tag.html。下面总结下使用步骤及注意事项。 一、环境准备 1、微信版本手机版本要求(这个估计大家都满足)。 1)微信版本要求为:7.0.12及以上。 2)系统版本要求为:iOS 10.3及以上、Android 5.0及以上。 2、微信公众号绑定域名并在界面中引入微信的jssdk(注意jssdk要用1.6.0版本的)。 1)微信开放标签使用步骤与微信JS-SDK类似,也需要引入JS文件等步骤。如果是公众号身份的网页,需要绑定安全域名,如果是使用小程序云开发静态网站托管的小程序 网页,则不需绑定安全域名即可直接使用(这个地方因为我用的是公司已经上线的公众号所以安全域名都是配置好的,没有配置的可以在微信后台->公众号设置->功能设置)。 [图片] 2)在需要调用JS接口的页面引入如下JS文件:http://res.wx.qq.com/open/js/jweixin-1.6.0.js (支持https)如需进一步提升服务稳定性,当上述资源不可访问时,可改访问:http://res2.wx.qq.com/open/js/jweixin-1.6.0.js (支持https)。(这里因为也是公司上线的项目,都是脚手架引用好的,我只是升级了一下js的版本,再次提醒版本要是1.6.0的,这里如果说是自己来试水来测试这个功能的话注意一下用的jssdk的版本就好) [图片] 3、可以使用标签使用对象 1)已认证的服务号,服务号绑定“JS接口安全域名”下的网页可使用此标签跳转任意合法合规的小程序。 2)已认证的非个人主体的小程序,使用小程序云开发的静态网站托管绑定的域名下的网页,可以使用此标签跳转任意合法合规的小程序。 经过上面的检查如果条件都符合说明基本的开发环境和条件已经具备了,就可以开始试水开发了。 二、开发。 1)通过config接口注入权限验证配置并申请所需开放标签(这里具体代码运行流程的我就不知道了反正这一步是必须要成功的才行,相信做前端的程序猿们应该很清楚了,记住一定要成功!不然按钮肯定没有)。这个地方还有人说appid必须是小程序的,我感觉有点误导了,这个地方你在哪个地方跳就是哪个的,和你要跳到的小程序并没有太大关系。比如你在公众号跳小程序,那这个地方就是公众号的appid wxSdk.config({ debug: false, // 这个设置成true签名成功会返回弹出config ok的框框,建议测试的时候还是把这个打开,确保这一步是成功的。 appId: "", // 必填,公众号的唯一标识后台配置的 timestamp: "", // 必填,生成签名的时间戳后台配置的 nonceStr: "", // 必填,生成签名的随机串后台配置的 signature: "",// 必填,签名后台配置的 jsApiList: ['updateTimelineShareData'],// 必填,需要使用的JS接口列表,这个地方必须至少写一个,即使你一个都不想用 openTagList:['wx-open-launch-weapp']// 可选,需要使用的开放标签列表 }); 2)上面的config权限验证成功,标签也开放了就可以开始使用开放标签了(这个地方就照着微信官网的文档写就行,这里介绍几种写法)。 1)使用的前端框架和template标签不冲突的(username是小程序原始的id,gh开头的,path是小程序的页面路径,其他东西可以不动)。 <wx-open-launch-weapp id="launch-btn" :username="gh_xxxxx" :path="pages/index.html" @launch="handleLaunchFn" @error="handleErrorFn" > <template> <style>.btn { display: flex;align-items: center;width: 100px;height: 100px }</style> <button class="btn">跳转小程序</button> </template> </wx-open-launch-weapp> 2)使用的前端框架和template标签冲突的,例如VUE框架(就是把标签换一种写法,避免冲突)。 <wx-open-launch-weapp id="launch-btn" :username="gh_xxxxx" :path="pages/index.html" @launch="handleLaunchFn" @error="handleErrorFn" > <script type="text/wxtag-template"> <style>.btn { display: flex;align-items: center;width: 100px;height: 100px }</style> <button class="btn">跳转小程序</button> </script> </wx-open-launch-weapp> 3)不管冲突不冲突都能用的(就是动态的生成标签内容,下面的例子是在vue中用v-html实现的,也可以用docment对象来动态的生成节点在加到页面)。 <template> <div v-html="html"></div> </template> <script> export default { data () { return { html:'<wx-open-launch-weapp id="launch-btn" username="gh_xxxx" path="/pages/index.html" @launch="handleLaunchFn" @error="handleErrorFn"><template><style>.btn { display: flex;align-items: center; }</style><button class="btn">跳转小程序</button></template></wx-open-launch-weapp>' } }, created() { }, mounted() { }, methods: { handleLaunchFn (e) { console.log(e) }, handleErrorFn(e){ console.log('fail', e.detail); }, } } </script> 4)对于有CSP要求的页面,需要添加白名单[代码]frame-src https://*.qq.com webcompt:[代码],才能在页面中正常使用开放标签(这点重中之中,因为我看了两天的帖子都没人提到这个点,虽然到现在我也不清楚什么是有CSP要求的界面,我不显示按钮的原因也是因为这个)。 单页面的项目就在index.html中的head标签下面添加。 [图片] <meta http-equiv="Content-Security-Policy" content="script-src * 'self' 'unsafe-inline' 'unsafe-eval' https://img.yzcdn.cn https://ssl.google-analytics.com https://assets.zendesk.com https://connect.facebook.net;default-src 'self' data: gap: https://ssl.gstatic.com 'unsafe-eval'; style-src 'self' 'unsafe-inline'; media-src *; img-src * data: content:; connect-src *; font-src * data: content:;frame-src https://*.qq.com webcompt:;"> 上面四个步骤完成基本上就算开发完成了可以测试了。 三、测试(测试一定要真机测试就是要在手机上测试,其他测试环境目前都不会有按钮显示不管环境正不正确,代码正不正确)。 测试没啥说的祝大家好运吧! 四、总结 微信官方文档上面给的说明其实比较详细了,该提的点也都提了,希望各位开发者认真看下文档,检查自己的环境是否具备,代码写的是否正确。下面从环境和开发方面总结几个重要的点。 环境: 1)微信和手机系统的版本。 2)使用的jssdk必须是1.6.0的。 3)微信的服务号公众号必须是已经认证的服务号、且绑定了JS接口安全域名。 开发: 1)通过config接口注入权限验证配置并申请所需开放标签,这步骤必须成功。 2)避免template冲突。 3)对于有CSP要求的页面,需要添加白名单[代码]frame-src https://*.qq.com webcompt:[代码] 4)测试必须真机测试。
2021-03-29 - H5页面内嵌套了iframe ,iframe内无法调用小程序,请问怎么解决?
H5 A页面内嵌套了iframeB页面 ,B页面内无法调用小程序,请问怎么解决?
2023-10-24 - 出现 realAuthUrl errMsg:config:invalid signature ?
[图片] 已确保: 1.签名算法正确,已经过微信工具进行校验 2.前后端用于config的所有参数均一致,没有任何差异 3.access_token和jsapi_ticket均已进行7200秒缓存,失效后自动重新获取并缓存 4.公众号已配置js安全域名(https://applet.chinaant.net),并已配置该域名和后台所在服务器的公网IP白名单 目前怀疑原因: url不正确,但不知道为什么不正确,已参照网上说的方案,前端处理url后进行传递,但仍会出现报错 created() { const script = document.createElement("script"); script.type = "text/javascript"; script.src = "https://res2.wx.qq.com/open/js/jweixin-1.6.0.js"; document.body.appendChild(script); let url = location.href.split("#")[0]; this.$message.toast(url); setTimeout(async () => { let data = await this.$http.quitRequest(this.$app.h5Server + "/jsapi/configJsSdk", {url: encodeURIComponent(url)}); let config = data.list[0]; console.log(config) wx.config({ debug: true, appId: config.appId, // 必填,公众号的唯一标识 timestamp: config.timestamp, // 必填,生成签名的时间戳 nonceStr: config.nonceStr, // 必填,生成签名的随机串 signature: config.signature,// 必填,签名 jsApiList: ["openLocation"], // 必填,需要使用的JS接口列表 openTagList: ["wx-open-launch-weapp"] // 可选,需要使用的开放标签列表,例如['wx-open-launch-app'] }); wx.ready(() => { }); wx.error((res) => { console.log(res) }); }, 100); }
2022-02-28 - 你好,我们的小游戏收到了“小游戏补充备案材料”的通知,请问个人主体如何填写著作权自我声明?
你好,我们的小游戏收到了“小游戏补充备案材料”的通知,要求按照模板补充相关材料,模板之一的“著作权自我声明”中提到了“ XXX公司是网络游戏软件《XXXX》的著作权人或已取得著作权人的合法有效授权”这一内容,请问个人主体的小游戏没有软著,是否可以按照这个模板填写?[图片][图片]
2023-09-04 - <<著作权自我声明>>中手指印需要按在哪里?
<<著作权自我声明>>中提示违规图示,关键信息不清晰,手指印需要按在名字上吗?还有手指印这个需要多清晰呀。求解答。
01-30 - 小游戏备案状态主管部门审核中,但收到了通知,该怎么处理
目前备案的状态如下: [图片] 今天收到如下通知: [图片] 核查代备案授权书和著作权自我声明: [图片] [图片] 都是审核通过状态,而且材料涉及的主题和游戏名称也都一致 麻烦这种情况应该怎么办?
03-04 - 工作室著作权自我声明,本工作室被驳回
著作权自我声明、代备案授权书 被驳回,“本工作室”一词被标为有问题,但未给出正确用词。 按照范例这里应填写 “我司” 或 “本人”,工作室的话,这里应该填写什么呢? 在线等,急。。。 [图片]
2023-12-04 - 小游戏资质提交审核指引Q&A
小游戏资质提交审核指引 温馨提醒:微信公众平台的账号名称是该账号的品牌表现,小游戏账号命名需符合平台规范。如需提前了解,或查询你的小游戏未符合平台规范 原因,可点击此处查阅平台命名规范 一、资质提交入口: 1.微信公众平台 -> 首页 -> 小程序发布流程 -> 小程序备案 -> 选择游戏情况 -> 资质提交(首次提交资质材料) [图片] 2.微信公众平台 -> 首页 -> 菜单栏左下角 -> 账号设置 -> 游戏设置 -> 资质管理 -> 前往管理(首次or后续更新资质材料)[图片] 二、主体迁移:微信公众平台 -> 首页 -> 菜单栏左下角 -> 账号设置 -> 基本设置 -> 主体信息 -> 小程序主体变更 -> 提交资质审核申请 [图片] 注:审核提交信息后预计1-2个工作日内处理完毕,审核请留意微信公众平台通知中心的通知。 说明:游戏资质文档规范及示例 一、各资质文档基本要求: (1)所有游戏需提交:《游戏自审自查报告》、《著作权自我声明》、《代备案授权书》 文档规范要求:上传文件,非个人主体请务必加盖清晰规范账号主体公章,个人主体请在落款处清晰规范签署个人签名并捺指印 查看示例: 《游戏自审自查报告》、《著作权自我声明-非个人主体》、《著作权自我声明-个人主体》、《代备案授权书-非个人主体》、《代备案授权书-个人主体》 (2)选填材料一个《计算机软件著作权登记证书》 文档规范要求:上传【原件或加盖著作权人鲜章的复印件】之扫描件,复印件务必清晰规范加盖著作权人公章或著作权人签名 查看示例:《计算机软件著作权登记证书》 注:游戏名称含有“软件”、“人名”、“英文”,《计算机软件著作权登记证书》为必填材料。 (3)牌类游戏需提交:《计算机软件著作权登记证书》、《网络游戏出版物号核发单》、《产品合规报告》、《产品运营报告》、《内容一致承诺函》、《关于使用微信支付服务的合法性承诺书》、《棋牌类网络游戏经营自查报告》、《游戏自审自查报告》、《著作权自我声明》、《代备案授权书》 文档规范要求:上传【原件或复印件】之扫描件,复印件非个人主体请务必加盖清晰规范账号主体公章,个人主体请清晰规范签署个人签名 查看示例:《计算机软件著作权登记证书》、《网络游戏出版物号核发单》、《产品合规报告》、《产品运营报告》、《内容一致承诺函》、《关于使用微信支付服务的合法性承诺书》、《棋牌类网络游戏经营自查报告》、《游戏自审自查报告》、《著作权自我声明-非个人主体》、《代备案授权书-非个人主体》 (4)开通虚拟支付游戏需提交:《网络游戏出版物号核发单》、《计算机软件著作权登记证书》、《游戏自审自查报告》、《内容一致承诺函》、《著作权自我声明》、《代备案授权书》 《网络游戏出版物号核发单》文档规范要求: 上传【原件】之扫描件 查看示例:《网络游戏出版物号核发单》 《计算机软件著作权登记证书》文档规范要求: 上传【原件或加盖著作权人鲜章的复印件】之扫描件,复印件务必清晰规范加盖著作权人公章或著作权人签名 查看示例:《计算机软件著作权登记证书》 《游戏自审自查报告》文档规范要求: 上传文件,请务必加盖清晰规范账号主体公章 查看示例: 《游戏自审自查报告》 《内容一致承诺函》文档规范要求: 上传文件,请务必加盖清晰规范账号主体公章 查看示例:《内容一致承诺函》 《著作权自我声明》文档规范要求: 上传文件,非个人主体请务必加盖清晰规范账号主体公章,个人主体请在落款处清晰规范签署个人签名并捺指印 查看示例:《著作权自我声明-非个人主体》、《著作权自我声明-个人主体》 《代备案授权书》文档规范要求: 上传文件,非个人主体请务必加盖清晰规范账号主体公章,个人主体请在落款处清晰规范签署个人签名并捺指印 查看示例:《代备案授权书-非个人主体》、《代备案授权书-个人主体》 (5)文化互动类目需提交:2个,《商标注册证》、《游戏自审自查报告》 《商标注册证》文档规范要求: 文档规范要求:上传【原件或复印件】之扫描件,复印件请务必加盖清晰规范商标注册人公章,商标注册人为个人请清晰规范签署个人签名 查看示例:《商标注册证》 《游戏自审自查报告》文档规范要求: 上传文件,非个人主体请务必加盖清晰规范账号主体公章,个人主体请在落款处清晰规范签署个人签名 查看示例: 《游戏自审自查报告》 (6)各个文件的格式、数量和大小要求 文件格式: 《网络游戏出版物号核发单》及《网络游戏出版物号核发单》授权书格式为 JPEG、JPG 《计算机软件著作权登记证书》文件为 JPEG、JPG、PNG、BMP、GIF、PDF 《计算机软件著作权登记证书》授权书为 JPEG、JPG、PNG、BMP 《游戏自审自查报告》文件为 JPEG、JPG、PNG、BMP、GIF 《内容一致承诺函》文件为 JPEG、JPG、PNG、BMP、GIF 《关于使用微信支付服务的合法性承诺书》文件为 JPEG、JPG、PNG、BMP 《棋牌类网络游戏经营自查报告》文件为 JPEG、JPG、PNG、BMP 《著作权自我声明》文件为 JPEG、JPG、PNG、BMP 《代备案授权书》文件为 JPEG、JPG、PNG、BMP 《产品合规报告》文件为 PDF 《产品运营报告》文件为 PDF 文件大小: 《网络游戏出版物号核发单》及《网络游戏出版物号核发单》授权书单个文件大小:≤ 200KB 《计算机软件著作权登记证书》及《计算机软件著作权登记证书》授权书单个文件大小:≤ 2000KB 《产品合规报告》、《产品运营报告》、《游戏自审自查报告》和《内容一致承诺函》大小不超过5M 《软著自我声明》、《代备案授权书》、《关于使用微信支付服务的合法性承诺书》和《棋牌类网络游戏经营自查报告》文件大小不超过2M 文件数量: 《网络游戏出版物号核发单》文件限制最多1张(多于1张请按顺序自行合并) 《网络游戏出版物号核发单》授权书限制最多2张(多于2张请按顺序自行合并) 《计算机软件著作权登记证书》限制最多1张(多于1张请按顺序自行合并) 《计算机软件著作权登记证书》授权书限制最多2张(多于2张请按顺序自行合并) 二、关于《计算机软件著作权登记证书》: (1)《计算机软件著作权登记证书》著作权人:提审软著证书的著作权人需与版号著作权人保持一致 《计算机软件著作权登记证书》著作权人说明示例图: [图片] (2)《计算机软件著作权登记证书》颁发日期:《计算机软件著作权登记证书》的颁发日期需在版号证书颁发日期前 《计算机软件著作权登记证书》颁发日期说明示例图: [图片] (备注:《计算机软件著作权登记证书》颁发日期为2015年5月6日,《网络游戏出版物号核发单》颁发日期为2016年11月8日) 三、关于各资质文档刊载游戏名称:各资质文件中的游戏名称,需与提审游戏名称保持完全一致 游戏名称一致说明示例图: [图片] 四、关于授权书: (1)提交入口:登录微信公众平台(mp.weixin.qq.com),进入公众平台菜单栏左下角->账号设置->游戏设置->资质管理->前往管理-> 在《授权书》入口上传相关授权书,该入口支持多个文档上传 [图片] (2)应用场景: 请针对小游戏资质软著授权、小游戏品牌合作等素材露出、使用他人的商标或IP等场景上传相关授权书及授权人的权利证明,包括但不限于著作权授权(不限于美术作品著作权、文字作品著作权、音乐作品著作权、计算机软件著作权);版号、备案信息中的运营单位授权他人发布小游戏;使用文学作品或影视作品名称或内容的小游戏;使用他人商标的小游戏;品牌联合推广等。 示例文档:《著作权授权书》、《运营授权书》、《商标授权书》 特别说明:若《网络游戏出版物号核发单》运营单位、《计算机软件著作权登记证书》著作权人与提审主体不一致,即《网络游戏出版物号核发单》运营单位委托他人发布小游戏的,请在《授权书》入口上传《计算机软件著作权登记证书》著作权人、《网络游戏出版物号核发单》运营单位、向提审主体出具的多份运营授权书。授权链条示例拆解,详见以下图表: [图片] [图片] 五、规范要求: (一)单份授权书 (1)明确标明授权人与被授权人准确名称 (2)写明授权作品的基本信息(软件名称及简写、版本号,计算机软件著作权登记证书登记号) (3)明确标明授权范围和期限 (4)授权方的盖公章或亲笔签名(个人) (5)授权书资质文件不得超过有效期 (二)多份授权书 (1)前后几份授权书之间需要有连续性 (2)在后授权书的授权范围不能超过在先授权书 (3)在后授权书的授权时间不能超过在先授权书 (4)注明是否有转授权的权利 文档规范要求:上传文件,务必加盖公章授权方盖公章或亲笔签名(个人) 查看示例:《著作权授权书》、《运营授权书》、《商标授权书》 六、其他易遗漏事项温馨提醒 (1)清晰:小游戏资质文件关键信息需清晰可见 (2)公章/签名:各资质文档需加盖公章或亲笔签名 附:如果你还不了解如何提审版本,请点击此处查看版本提审指引
11-01 - 使用wx.chooseVideo 选择实时拍摄时,ios端拍摄很模糊,无法对焦?
API:wx.chooseVideo 微信版本号: 调试基础库:2.8.2 [图片] 选择视频时,点击拍摄,调用前置摄像头拍摄视频,ios(苹果6,7,X)显示视频模糊,安卓无问题。
2019-09-10 - 域名被微信拦截,提示已停止访问该页面,能否恢复访问?
如果您的域名被微信拦截,并提示已停止访问该页面,可能是因为您的域名或网站触发了微信的安全机制,被判定为违规或存在安全风险。在这种情况下,恢复访问通常需要采取以下步骤: 1.核查违规内容: 仔细检查您的网站内容,确保没有包含任何违反微信规范的信息、敏感内容、欺诈行为或恶意软件等。 2.申诉与联系微信技术支持: 根据微信提供的申诉渠道,提交申诉并解释您的网站内容符合规范,请求他们重新审核和解除对您域名的拦截。 3.修正违规问题: 根据微信给出的指引或建议,进行相应的修改和调整,确保您的网站内容符合微信的规范要求。 4.等待审核与解封: 一旦提交了申诉,您需要耐心等待微信的审核过程。通常情况下,微信会在数天至数周内对您的申诉进行处理,如果申诉成功,他们将会解除对您域名的拦截。 需要注意的是,微信的审核和解封过程由微信官方决定,结果可能因情况而异。建议您积极与微信技术支持团队保持沟通,并遵循他们的指导和要求进行操作。同时,确保您的网站内容合规,并遵守相应的法律法规和微信的规范要求,以减少被拦截的风险。
2023-08-04 - rich-text 标签不显示富文本中的video标签?
rich-text 标签怎么能够显示富文本中的video标签呢?
2021-12-21 - 插件系统错误,错误码:41002,appid missing,什么情况
[图片]
2023-07-15 - 遇到的坑
1、ios下,音频播放没声音 原因:在ios静音模式下,音频播放就没声音, 可否解决:可解决,wx.setInnerAudioOption()办法中,有obeyMuteSwitch属性,[(仅在 iOS 生效)是否遵循静音开关,设置为 false 之后,即使是在静音模式下,也能播放声音] 2. 在scroll-view中,子组件设置position:fixed, 不能覆盖全屏,只能在scroll-view范围中,ios出现最多这个问题。 可否解决: 不能,只能避开这个组合 3、在ios中,使用wx.chooseImage(Object object)或wx.chooseVideo(Object object),可能会出现点击无反应。 可否解决: 能,原因是sourceType属性导致的,在ios中sourceTyp属性写string类型如:sourceTyp:'album',就会在ios导致点击无反应。要写成sourceTyp:['album'],改成数组类型
2020-01-06 - wx.onNeedPrivacyAuthorization 不触发是什么问题?
wx.onNeedPrivacyAuthorization(resolve => { console.log(resolve, 'onNeedPrivacyAuthorization') }) 放在onload里面也不执行
2023-08-24 - 关于小程序订单中心页设置的公告
为进一步规范小程序交易生态、提升用户购物体验、满足用户在有交易的小程序中便捷查看订单信息的诉求,自 2022 年 12 月 31 日起,对于有 “选择商品 / 服务 - 下单 - 支付” 功能的小程序,需按照平台制定的规范,在小程序内设置订单中心页。同时开发者需将小程序订单中心页的 path 同步给平台,以便平台核实设置情况。 一、需设置订单中心页的小程序类型针对同时满足以下条件的小程序,开发者需在小程序内设置订单中心页并将对应 path 同步给平台 1、实际经营类型为电商平台、商家自营、生活服务等涉及线上支付的小程序,购买对象为实物、虚拟商品或线下 / 线上服务等; 2、小程序内的交易涉及选择商品 / 服务 - 下单 - 支付的完整流程。 涉及的小程序类目如下: [图片] 二、订单中心页的设计规范为保障用户易用性,订单中心页需通过统一页面,展示所有涉及资金交易的订单明细或订单分类入口,详情请参考以下两种设计规范: 1、页面包含所有涉及资金交易的订单明细 [图片] 2、页面包含所有涉及资金交易的订单分类入口 [图片] 三、小程序订单中心页 path 规范1、规范生效的时间 自 2022 年 12 月 1 日起,开发者可通过代码提审入口、小程序管理后台 -> 设置 -> 功能设置进行 path 登记; 自 2022年 12 月 31 日起,若相关小程序仍未提交符合规范的订单中心页 path ,其后续代码提审可能会被驳回。 2、规范细则 (1)格式规范 i. 通过主 path(不拼接参数)可访问订单中心页面,设置时仅填写主 path; ii. path 内不含中文字符。 (2)跳转规范 i. 通过 path 进入订单中心,不自动跳转至小程序首页等其他页面,页面不出现加载失败等 bug ; ii. 通过 path 进入订单中心,如检测到用户无登录态,则在该页面通过弹窗等方式引导用户登录,登录后停留在订单中心页;或者跳转到登录页面,登录成功后返回订单中心页。 (3)修改规范 path 设置成功后,若对页面内容有调整,请确保调整后的页面仍符合订单中心页的各项规范。对于已发现的不再符合规范的订单中心页,平台会通知开发者限期调整。 四、订单中心页 path 同步方式自 2022 年 12 月 1 日起,平台提供以下两种方式供开发者将小程序订单中心页的 path 同步给平台(订单中心页的 path 如有变更,请及时重新设置): 1、对于新注册或有版本迭代需求的小程序:可在代码提审环节设置订单中心 path 2、对于无版本迭代需求的小程序:可在小程序管理后台 -> 设置 -> 功能设置 -> 小程序订单中心 path 设置入口进行设置 [图片] 五、第三方开发者代设置 path 的方式1、对于新注册或有版本迭代需求的小程序:可在提审时通过参数配置该商家小程序的订单中心页 path 新增参数为:order_path;接口为:submit_audit2、对于无版本迭代需求的小程序:第三方开发者可通过以下接口代商家设置订单中心页 path applySetOrderPathInfo:该接口可用于批量代商家小程序提交申请设置订单中心页 pathgetOrderPathInfo:该接口可用于查询商家小程序订单中心页 path 信息 微信团队 2022年12月2日
2023-09-26 - 公众号首页,为何有的显示视频,有的显示视频号呢?
为什么在公众号首页,消息,视频,服务显示的部分,有的显示是视频有的显示是视频号呢?如下照片[图片][图片]
2023-04-11 - 公众号跳转视频号可以吗?
公共号开发的时候,想要用户从公众号内部网页内跳转到自己的视频号这个功能现在能实现吗?
2022-03-25 - 一张图带你理解《隐私保护协议》
这是那个引起开发同学摔盆砸碗的公告 原文地址 [代码]为规范开发者的用户个人信息处理行为,保障用户的合法权益,自2023年9月15日起,对于涉及处理用户个人信息的小程序开发者,微信要求,仅当开发者主动向平台同步用户已阅读并同意了小程序的隐私保护指引等信息处理规则后,方可调用微信提供的隐私接口。 [代码] 这是开发同学需要特别关注的事项: 在 2023年9月15号之前,在 app.json 中配置 usePrivacyCheck: true 后,会启用隐私相关功能,如果不配置或者配置为 false 则不会启用。 在 2023年9月15号之后,不论 app.json 中是否有配置 usePrivacyCheck,隐私相关功能都会启用。 撒疼 这里省略一万句脏话 撒疼,看完公告,只感受到了:时间紧,任务重;具体咋搞?不知道,看不懂,一脸懵逼 图在最下面,中间有很多废话,如果看官猴急,可以直接翻到最下面 必须要看的 2 篇文章; 官方的,都是官方的,统统都是官方提供的 不知道怎么填写隐私协议,看这里:用户隐私保护指引设置 想查看隐私接口与对应的处理的信息关系,点这里:小程序用户隐私保护指引内容介绍 必须要知道的 4 个Api; wx.getPrivacySetting 查询隐私授权情况官方链接 wx.onNeedPrivacyAuthorization 监听隐私接口需要用户授权事件。 官方链接 wx.openPrivacyContract 跳转至隐私协议页面 官方链接 wx.requirePrivacyAuthorize 模拟隐私接口调用,并触发隐私弹窗逻辑 官方链接 # wx.getPrivacySetting(Object object) [代码]// # 查询隐私授权情况 # wx.getPrivacySetting({ success: res => { console.log(res) // 返回参数示例 // { // errMsg: "getPrivacySetting:ok" // needAuthorization: true // 是否需要用户授权隐私协议(如果用户之前授权过则会返回false,如果用户还没授权过则返回true,如果用户之前授权过、但后来小程序又新增了隐私收集类型也会返回true) // privacyContractName: "《xxUAT小程序隐私保护指引》" //隐私授权协议的名称 // } } }) [代码] # wx.onNeedPrivacyAuthorization [代码]// # 监听隐私接口需要用户授权事件 # /** * - 监听隐私接口需要用户授权事件 * - 当需要用户进行隐私授权时会触发 * - 触发该事件时,开发者需要弹出隐私协议说明,并在用户同意或拒绝授权后调用回调接口 resolve 进行上报 */ wx.onNeedPrivacyAuthorization(resolve => { // 需要用户同意隐私授权时 // 弹出开发者自定义的隐私授权弹窗 this.setData({ showPrivacy: true }) this.resolvePrivacyAuthorization = resolve }) [代码] # wx.openPrivacyContract [代码]// # 跳转至隐私协议页面 # wx.openPrivacyContract({ success: (res) => { // 打开成功 console.log("openPrivacyContract - success", res) // 返回参数示例 // { // errMsg: "openPrivacyContract:ok" // } }, fail: () => {}, // 打开失败 }) [代码] # wx.requirePrivacyAuthorize [代码]// # 模拟隐私接口调用,并触发隐私弹窗逻辑 # wx.requirePrivacyAuthorize({ success: () => { // 用户同意授权 // 继续小程序逻辑 }, fail: () => { // 用户拒绝授权 }, }) [代码] 一看就明白的流程图 可以查看大图,更清晰哦; [图片] 一看就会,一做就废 代码写好了,工具上就是不展示协议? 升级开发者工具,基础库版本调整到 3.0.1 如果想要代码,私信我 说话温柔点,大叔手把手教你 下一篇来提取公共方法,看官莫急
2023-08-23 - 订阅号能否更改为服务号?
订阅号(帐号A)不能更改为服务号,但是可通过迁移的方式迁移到角色为服务号的帐号(帐号B),帐号A 迁移至帐号B,迁移完成,A帐号将被回收。帐号迁移条件以及帐号迁移更多问题了解请参考:https://kf.qq.com/product/weixinmp.html#hid=2488
2019-11-15 - 【企业微信-微信客服】小程序和企业微信不是一个公司主体,怎么接入微信客服呢?
如题,我们小程序主体是子公司,但企微的主体是总公司 怎么让小程序可以使用微信客服呢?急急急!
2021-11-05 - 如何开通微信客服(开通微信客服提示主体不一致怎么办?)
需求:小程序、APP、PC网页等开通微信客服; 开通微信客服:①注册企业微信并完成企业信息认证;②注册开放平台账号并完成企业认证、开发者资质认证(用于绑定APP、小程序、公众号等);③若是小程序及公众号,则开通微信公众平台对应账号;④注意:开通微信客服,上述认证企业需为同一家公司; 常见问题: 1、提示主体不一致;2、提示deeplink customerservices no permission;3、提示OpenCustomerServiceChat:fail check 或 bad_deeplink;4、提示:小程序未设置管理员信息,无法被绑定;5、设置了客服,但是联系客服时却找不到客服. ①小程序、微信开放平台、企业微信认证的主体(企业)均一致,在企业微信中绑定APPID时,却提示主体不一致? [图片] 问题及解决方案:①确认小程序、微信开放平台、企业微信是否认证的同一家公司;②检查微信开放平台--账号中心--开发者认证,是否进行了认证;③已完成开放平台开发者资质认证,若是app开通企业微信,则尝试直接在开放平台--管理中心---应用管理--APP详情中找到【关联设置】,在这里进行关联APP ID。 [图片] [图片] ②主体均一致且已经绑定成功了,并且小程序可以跳转到微信客服,为何APP跳转不过去,点不动,提示deeplink customerservices no permission? 问题及解决方案:重新打包发个版即可。 ③通过重新打包发版后可以跳转到微信客服了,但是当重新变更客服或其它操作(无法复现)时,再次点击跳转微信客服时,提示OpenCustomerServiceChat:fail check 或 bad_deeplink? [图片][图片] 问题及解决方案:客服链接被更新了,需到企微后台重新复制链接给开发替换后重新发版即可! ④开放平台绑定小程序/公众号 提示:小程序未设置管理员信息,无法被绑定,但实际已经设置了管理员; [图片] 问题及解决方案:绑定小程序或公众号时,微信会自动获取开放平台账号密码,此时直接点击下一步就会提示上述问题;此时应该清除后重新输入正确的小程序或公众号登录账号密码即可; ⑤设置了客服,但是联系客服时却找不到客服; 问题及解决方案:检查下是否绑定了客服人员。 [图片]
2023-05-19 - 同意隐私协议必须依赖wx.openPrivacyContract的回调吗?
同意隐私协议必须依赖wx.openPrivacyContract的回调吗?能否不点击打开隐私协议而直接点击『同意』进入小程序呢?
2023-08-28 - 隐私协议点击同意函数,没有触发事件的方法?
[图片]这个哪里来的?直接定义的变量么? [图片] [图片] 有函数 触发却说没有处理 事件的方法 [图片]
2023-08-31 - 为什么明明主包超过2M,仍然能上传成功呢?一直在被包大小困扰,偶然换个电脑突然发现可以上传
[图片]
2021-08-16 - 小程序scanCode success 和 onShow 调用顺序
想知道 scanCode 成功后 是先走success 还是先onShow 调用scanCode成功后各类机型返回结果 android&&开发者工具: onShow => scanCode.success ios: scanCode.success => onShow 这是特意维持成这样的吗?
2019-02-14 - 公众号文章搜索不到时如何处理?
为保障用户体验,公众号文章内容必须是合规内容、且新发布的内容最长可能需要48小时后才能被搜索到。 如已经发布后一周,并且遇到以下公众号文章搜索不到场景: 公众号号内搜索不到文章公众号迁移后搜索不到文章公众号新发的文章搜索不到公众号文章无法通过搜一搜搜索出来可在社区发帖反馈,发帖时,请提供:已群发一周搜索不到的文章标题、搜索结果页面截图、推文链接以及公众号账号信息。 请注意搜索结果页面截图,需要点击文章模块,筛选已关注的公众号。若已关注的公众号下方有展示是符合预期 提交成功后,相关团队将会及时进行核实及处理,请勿重复发帖。 搜一搜优化教程:https://mp.weixin.qq.com/s/FTNvYMAYvvgfg0qtH4QsGQ微信公众平台运营规范:https://mp.weixin.qq.com/mp/opshowpage?action=newoplaw
2023-03-13 - 小程序在ios和android中,扫码回调与onshow执行顺序的不同
开发时遇见了一个问题。 页面中有一个input框,每次进入这个页面会给他赋一个默认值A。页面有一个扫码功能,扫完码会给这个框赋值一个字符串B。 功能做完以后,发现安卓使用是正常的,但是IOS系统出现了BUG:在扫码后,input框会变为B,然后瞬间又变回A。 后来查找了对此值的赋值发现,ios系统在扫码完返回时调用了onshow()的生命周期函数。而后发现安卓系统也会调用onshow()的生命周期函数。 经过测试,安卓系统中onshow()先被调用,wx.scanCode()的回调函数再被调用。而ios系统wx.scanCode()的回调函数先被调用,onshow()才被调用。 最终的解决方法,把赋值操作放在onload()里面。
2021-03-03 - 小程序后台没有URL Scheme入口是因为什么?
[图片][图片]
2022-04-24 - 小程序链接生成与使用规则调整公告
各位开发者: 为确保小程序链接合理使用,自 2022 年 4 月 11 日起,URL Scheme 和 URL Link (以下统称为 “链接” )接口能力规则将进行以下调整: 每个 URL Scheme 或 URL Link 有效期最长 30 天,均不再支持永久有效的链接、不再区分短期有效链接与长期有效链接;链接生成后,若在微信外打开,用户可以在浏览器页面点击进入小程序。每个独立的链接被用户访问后,仅此用户可以再次访问并打开对应小程序,其他用户无法再次通过相同链接打开该小程序;单个小程序每天生成链接数(URL Scheme 和 URL Link 总数)上限为 50 万条。 对于上述 1,在开发层面,相应的服务端接口 urlscheme.generate 和 urllink.generate 将进行以下调整: is_expire 值固定为 true,可不再传该值,若传值为 false 也与 true 一样会生成到期失效链接;若 expire_type 传值为 0,需注意 expire_time 传值的时间戳不超过 30 天,即该参数最长传值有效期为 30 天;若 expire_type 传值为 1,需注意 expire_interval 传值范围为 [1, 30],即该参数最长传值间隔天数为 30。详细对比见下表: [图片] 已使用该后端接口的开发者可以不进行任何修改,不会出现返回异常。若传值超过新规则合法值,或声明使用永久有效的链接,则均会被赋最长有效期值(30天);需注意以上新规则生效后的有效期和访问规则变化。 在本次规则调整生效前已经生成的链接,也将自动生效以下规则: 如果有效期超过30天或长期会被降级为30天有效,开始时间从调整日期开始计算;在调整生效后,只能被1个用户访问。 当前已使用微信云开发 静态网站H5跳小程序 与 短信跳小程序、微信服务平台短信服务为用户提供链接的功能不受影响,但同样适用以上规则。 微信团队 2022年3月9日 相关QAQ1:每天下发的短信量级超过50万条,不够用怎么办? A1:可将生成 scheme 的时机改为在用户打开 H5 时再生成: [图片]
2023-09-26 - 小程序视频设置静音后,声音无法开启
- 当前 Bug 的表现(可附上截图) [图片] - 预期表现: <video id="myVideo" src="" autoplay="autoplay" muted="true" muted="true" style='width:600rpx;height:1065rpx;'></video> 初始为静音,但无法开启声音 - 复现路径 - 提供一个最简复现 Demo
2019-06-19 - “活动、服务预约”玩法介绍和运营建议
传统的活动、服务预约场景,如品牌展览、快闪活动、俱乐部、课程、体验活动等,须通过短信、传单、线下门店或柜台、电梯广告等方式完成宣传,并通过线下登记手机号等方式完成信息登记,印刷纸质券并完成派发。高成本低效率的同时,难以跟踪用户声音和沉淀用户数据。 结合微信模板消息、卡包、小程序能力,我们希望提高用户预约效率、活动到场转化率,丰富用户体验,并及时获取用户反馈,沉淀用户数据。 用户路径设计: ①活动宣传-②预约报名-③活动分享-④活动提醒-⑤入场核券-⑥场内互动 01 活动宣传 小程序入口全览 [图片] 1.微信公众号图文 2.朋友圈广告、公众号广告 3.搜索 4.门店物料 5.其他:附流量运营全景图 02 预约报名 1)用户填写预约信息时:推荐使用微信组件,一键填充手机号码 在新用户注册、联系方式登记等必要场景下,开发者均可在页面上部署手机号快速填写组件。用户点击组件,完成弹窗授权后,即可直接将微信绑定的手机号填入,绝大部分情况下无需再进行短信验证码校验。 若用户不愿提供微信绑定的手机号,开发者需提供手动输入手机号功能。 [图片] 2)用户完成预约,并领取预约凭证:推荐使用卡包功能,一键领取凭证,自动添加进卡包 在预约信息确认页面,用户复核信息并确认预约,点击领取凭证。 跳转进入卡包页面,将入场凭证添加进卡包。 3)用户领取凭证后:推荐使用模板消息,下发领取成功提醒 用户通过小程序成功预约活动后,品牌可通过模板消息下发“预约成功通知”,向用户提供活动名称、地址、时间、温馨提示等信息。 用户亦可点击“预约成功通知”模板消息,重新进入品牌小程序。 03 活动分享 1)生成分享卡片: 除了用户自发转发活动链接,品牌可设计具备品牌特色的分享卡片(包含品牌小程序太阳码),方便用户分享给朋友。 [图片] 2)设计品牌元素周边玩法,引导用户自主转发: [图片] 04 活动提醒 用户订阅开始提醒后,系统可定点下发活动提醒,用户点击可进入小程序核销页面。 [图片] [图片] 05 入场核券 通过模板消息/卡包,用户点击打开入场券,进行核销。 [图片] 核销成功后,推送模板消息“核销成功通知”,引导用户点击进入活动服务。 [图片] 06 场内互动 1)小程序+电子屏 用户可在小程序提交文字内容,投屏至电子屏,提升娱乐性。 [图片] 2)小程序+室内导航、语音讲解 向用户提供浸泡式体验。 [图片] [图片] 以上各类运营策略及数据,整理自试点商户线下门店及小程序,请根据自身情况参考借鉴。
2020-01-15 - “扫码购”玩法介绍与运营建议
“ 品牌实体门店受空间限制,往往库存深度不足,容易出现缺色断码的情况,导致顾客喜欢的款式无法当场购买,形成跑单。” 结合微信扫码、小程序能力,在门店“缺色断码”的场景中,打造“扫码-小程序下单-寄送到家”的消费体验,带动品牌生意增量,同时沉淀用户数据。 扫码购流程的关键节点: ① 扫码适配 ② 铺码 ③ 用户引导 ④ 小程序购买 ⑤ 订单路由&发货 ⑥ 业绩归属与激励 01 扫码适配 微信支持扫描一维码、二维码打开小程序,品牌可根据实际情况选择。 1)一维码 需要在小程序中调起扫码。 开发指引内容较长,建议使用电脑详细查阅。点击打开文档 2)二维码、小程序码 支持使用微信“扫一扫”扫描并跳转小程序。 对于已经铺设普通二维码(网页链接编码后生成的二维码)的品牌,可用以下接口实现用微信“扫一扫”扫描跳转小程序: 开发指引内容较长,建议使用电脑详细查阅。点击打开文档 02 铺码 品牌可根据实际情况将码放在合适的位置,如商品吊牌、鞋子底部等。 [图片] 03 用户引导 品牌可根据实际情况将码放在合适的位置,如商品吊牌、鞋子底部等。 04 小程序商城购买 用户扫码后直达小程序商城,完成注册、登录、下单、付款等操作。 [图片] “小程序商城”可参考下列文章:《“小程序商城”介绍与运营建议》点击打开文章 05 订单路由&发货 扫码购一般涉及品牌多门店、多渠道之间的商品和库存流转,所以建议品牌对此类订单制定订单路由逻辑,常见如“就近门店发货”、“区域仓发货”、“总仓发货”等,并在产生订单后完成订单分配和发货。 06 业绩归属&激励 建议品牌制定适合的业绩归属机制,对接单、发货的渠道或店员进行激励,以保证扫码购的持续运营。 以上各类运营策略及数据,整理自试点商户小程序,请根据自身情况参考借鉴。
2020-01-10 - “UnionID关联”功能介绍及运营建议
产品简介:实现同一个用户在公众号、小程序、APP、官方网站等不同场景里的身份统一识别、信息同步和行为跟踪。 优势:唯一用户身份标识,打通会员信息和会员积分,打通多场景用户行为,支撑CRM和精准营销。 接入方式:需开发。 关键词:身份唯一识别、统一会员体系、CRM、精准营销。 01 UnionID机制说明 如果开发者拥有多个移动应用、网站应用、公众帐号及小程序,可通过 UnionID 来区分用户的唯一性。 因为只要是同一个微信开放平台帐号下的移动应用、网站应用和公众帐号(包括小程序),用户的 UnionID 是唯一的。换句话说,同一用户,对同一个微信开放平台下的不同应用,unionid是相同的。 [图片] 02 典型使用场景及案例 1) 使用记录同步: 用户在多端的浏览记录、购买历史、收藏夹等信息可便捷同步,并提供个性化服务。 2)用户信息维护: 如会员卡积分、收货地址等信息,用户无需重新输入信息,降低使用成本,提升转化率。 如某服饰行业小程序,提供手机号一键快捷登录方式,可自动拉取用户在微信中的默认手机号码,避免再次填写。 [图片] 03 运营建议 1) 在必须用到登录信息的环节引导用户登录 在用户必须登录时才引导用户登录(如:购买前需要获取会员信息,用于同步积分数据),而不是用户一进入小程序就弹窗要求用户授权。如只需要在前端展示用户头像、昵称,无需要求用户授权,可直接展示。 2)清晰、准确地引导用户登录 在登录页面中,清晰、准确地告知用户当前操作是登录,说明获取登录信息的目的(如:用于同步会员积分数据等)。 3) 不强制用户必须登录后才能使用小程序服务 提供游客模式,不强制用户必须登录后才能进入小程序。如要求必须授权头像昵称等信息才能继续使用小程序,会导致某些用户放弃使用该小程序。 开发指引内容较长,建议使用电脑详细查阅。点击打开文档
2020-01-10 - “小程序互跳”功能介绍与开通指引
产品简介:多个小程序之间互相导流,对有多个小程序的商家,方便用户在不同小程序(例如商城、会员、金融服务等)间无缝切换。 优势:同一产品体系下多个产品互相导流。 接入方式:需开发。 关键词:多小程序入口 。 01 小程序跳转小程序 通过小程序互跳,品牌可实现多个小程序之间的互相推广,或品牌与品牌之间的异业合作。 跳转效果▼ [图片] 02 开通指引 1) 需要用户触发跳转 从 2.3.0 版本开始,若用户未点击小程序页面任意位置,则开发者将无法调用此接口自动跳转至其他小程序。 2) 需要用户确认跳转 从 2.3.0 版本开始,在跳转至其他小程序前,将统一增加弹窗,询问是否跳转,用户确认后才可以跳转其他小程序。 开发指引内容较长,建议使用电脑详细查阅。点击打开文档
2020-01-10 - “小程序二维码”功能介绍与生成方式
产品简介:通过生成小程序二维码(又称太阳码或葵花码,后文简称小程序码),并将印有小程序码的物料铺设在线下场景,或通过线上分享等方式,引导用户扫码或长按识别二维码进入小程序,实现小程序引流;并可通过配置带参数的小程序码,监控各来源渠道的转化效果。 优势:低成本,易生成,易推广;用户习惯养成,扫码、识别码易用。 接入方式:普通小程序二维码无须开发,可在后台直接生成;带参数小程序码须开发。 关键词:小程序引流,数据跟踪与分析。 01 应用场景 在时尚零售行业,品牌可基于不同的业务场景,将小程序码印在商品、包装、宣传物料、门店展架等等,引导用户通过扫码快速进入小程序。 1)线下场景如: 将小程序码印在宣传物料上,引导用户扫码进入小程序; 将小程序码印到商品瓶身、包装、货架上,引导用户扫描进入小程序,享受扫码购服务; 将小程序码印在亚克力牌上,放置在店内如收银台等位置,引导用户扫描进入小程序,快速创建会员、填写服务问卷等。 2)线上场景如: 在小程序内提供个性化分享卡片的生成功能,用户可将卡片自主转发给好友,好友可长按识别卡片进入小程序,体验小程序内的商品购买、预约等服务。 02 生成方式 小程序码的生成有两种方式,分别为通过小程序后台生成链接统一的普通小程序码,以及通过开发生成带参数的小程序码。 1)普通小程序码: 我们推荐你通过小程序后台(mp.weixin.com)-设置-基本设置-小程序码及线下物料下载,完成小程序码的下载。 下载完成后,你可以将其打印并铺设到线下场景,或者直接附于海报中用于线上传播。 2)带参小程序码: 如须生成带参数的小程序码,为每个宣传物料配上独一无二的小程序码,智能跟踪来源于不同渠道的明细数据,可通过后台接口生成不限数量且永久有效的带参数小程序码。 开发指引内容较长,建议使用电脑详细查阅。点击打开文档 3)兼容普通二维码: 我们还提供了扫描普通二维码跳转小程序的能力。如线下已铺设有二维码,无须更换二维码,即可通过该能力在线下推广小程序。 开发指引内容较长,建议使用电脑详细查阅。点击打开文档 03 进阶应用-带参数码详细介绍 通过带参数二维码的灵活应用,可以监控各个渠道的用户来源、活动转化,调配资源提升营销运营效果,它的应用场景有: 1) 大数据营销: 在不同渠道投放不同参数的小程序码,可以精准记录客户来源,为营销决策提供依据。 2)线下助销: 通过给每个销售人员、每个店铺分配带有参数的小程序码进行佣金统计、计算销售奖励等。 3)一物一码: 让每个产品都拥有一个独一无二的小程序码,实现产品的差异化控制。
2020-01-14 - “公众号文章跳小程序”功能介绍及实现建议
产品简介: 小程序入口之一,让小程序可以通过更多的途径有效触达用户。将公众号和小程序相结合,能更好发挥商家线上运营的优势。 优势: 流量联动,承接线上线下服务 接入方式: 无开发 关键词: 流量互动 01 功能介绍 公众号插入小程序,支持文字、图片、小程序卡片3种形式: [图片] 02 运营建议 1、如何让用户更愿意点进文章内的小程序 1)文题相符:最精华的内容图文首屏呈现; 2)排版合理:前几屏展示有吸引力的内容(如热销商品等); 3)内容丰富:多种内容搭配展示,更易吸引用户。 2、小程序插入文章的形式建议 1)需要通过完整的、精美的图片表现商品特性的,(例如服装新品、美妆等),建议图片形式插入小程序; 2)内容较多,主要以文案吸引用户(如促销降价清单),建议文字形式插入小程序。 03 开通指引 1、配置入口: 入口路径:公众号后台-素材管理-新建图文素材-多媒体板块小程序-选择关联小程序 [图片] 2、公众号后台设置图文消息跳转小程序 配置流程:公众号后台-素材管理-新建图文素材-多媒体板块小程序-选择关联小程序 [图片] 以上各类运营策略及数据,整理自试点商户线下门店及小程序,请根据自身情况参考借鉴。
2020-04-15 - 视频号关联小商店/小程序
更新:以下内容适用于微信8.0.6版本前的设备,微信8.0.6版本后的设备详见指引 一、视频号关联商店的作用 [图片][图片] 二、关联条件 「小商店」 当前视频号的超级管理员为小商店的超级管理员当前视频号的超级管理员为小商店的成员「小程序」 当前视频号和小程序的主体一致当前视频号和小程序的超级管理员一致视频号的管理员为小程序的推广者(可在mp后台交易组件模块设置)三、如何上架直播 请完成视频号关联小商店/小程序步骤后,前往查看视频号直播关联小商店/小程序指引 四、视频号关联小商店/小程序步骤的详细说明 [图片][图片] 更多资讯,欢迎到【交流专区】微信小商店主页发帖和寻找答案。
2021-06-11 - 安卓 wx.getLocation 获取 altitude 为 0
获取altitude需要: 1.开启gps定位 2.开启高精度定位,因为gps定位一般耗时较久,试着将timeout设置成3-5s 因为getLocation是单次快速定位,如需精确位置可以考虑下持续定位接口,理论上定位点会随着时间越来越准. wx.startLocationUpdate wx.startLocationUpdateBackground
2020-12-16 - 请问,如下图,调用起微信扫码的时候会弹出scanQRCode:permission denied?
提示信息如下图:errMsg:scanQRCode:permission denied. 系统运行很久了,最近一段时间段有些客户有时候会有这个报错,有些客户又不会,不知道是微信什么问题。 [图片] [图片]
2020-05-20 - 微信小程序里面打开微信公众号的文章提示无法打开?
公众号已经关联过了[图片] 文章链接地址是[图片] https://mp.weixin.qq.com/s?__biz=Mzk0NDIwMTA1MA==&mid=2247483870&idx=1&sn=c3f3b931406b892283a68b3f8317534f&chksm=c3290debf45e84fd93510a33e60d6f97b302bc9a4bd82c5ecb7c81e251ef590a842b75a3cd10&token=1093296578&lang=zh_CN#r [图片]
2021-03-30 - 微信支付社区2022年度颁奖|感谢有你,携手同行!
2022已经翻页,我们也即将要送走“大脑斧”,迎来“小兔几”。 过去的一年里,微信支付社区涌现出了非常多的热心用户及优质内容创作者,他们毫不吝啬地帮助他人、慷慨大方地分享个人的技术经验,使得社区内充满了互助友爱的气氛。 我们要对这些积极有爱、乐于助人的用户们由衷地说一声感谢,为此我们也特地准备了一些年度答谢礼物送给各位。 2023年已然到来,微信支付愿与各位在新的一年里携手同行,共同成长。 以下为获奖名单: 2022 年度社区突出贡献奖 Memory、青寒:2022年共获得 12 次社区月度突出贡献者(排名不分先后) 社区将为以上 2 位突出贡献奖获得者送出专属新年礼包,礼物包含:微信支付定制行李箱(20寸)、微信支付Logo抱枕 [图片] [图片] 北望沣渭、菜虫网络、跨商通、ZYN2037:2022年共获得 4~6 次社区月度突出贡献者(排名不分先后) 社区将为以上 4 位突出贡献奖获得者送出专属新年礼包,礼物包含:微信支付定制双肩背包(黑色)、微信支付Logo抱枕 [图片] [图片] Mr.YAO、🙏一笑皆春🙏、peng、老张、拾忆、用爱发电、Jianbo、CRMEB、微喵网络:2022年获得过社区月度突出贡献者(排名不分先后) 社区将为以上 9 位突出贡献奖获得者送出专属新年礼包,礼物包含:微信支付定制晴雨伞、微信支付Logo抱枕 [图片] 2022 年度社区精选文章奖 ______、㐅卝、千山外、Dax、Y.、益 (^m^)、小时光、HOPE、满船清梦压星河:2022年社区精选文章获得者(排名不分先后) 社区将为以上 9 位精选文章奖获得者送出专属新年礼包,礼物包含:微信支付定制双肩背包(黑色)、微信支付Logo抱枕 [图片] 2022 年度文档反馈奖 84****357@qq.com、12****262@qq.com、12****4778@qq.com、27****597@qq.com、ch****lin@zhigoumao.cn:2022年微信支付官网文档中心有效反馈次数Top 5 用户 社区将为以上 5 位文档反馈奖获得者送出专属新年礼包,礼物包含:微信支付定制玻璃保温壶、微信支付Logo抱枕 [图片] 以上奖项不可兼得,具体实物礼物款式可能有细微调整,以实物为准,预计 1 个月内联系发出。 最后,小编在这里预祝各位微信支付商户、开发者、微信开放社区用户们春节愉快、阖家欢乐、万事如意! [图片] [图片] 微信支付团队 2023年01月18日
2023-01-19 - SDK jsApiLIst数组返回空
config:ok, jsApiLIst数组返回空,公众号后台有对应接口权限 ready回调里调用对应接口报错 the permission value is offline verifying [图片] [图片]
2022-01-18 - 云开发短信跳小程序(无代码版)教程
写在前面你可以通过视频演示的方式学习本教程,更加利于学习和理解。 [视频] 一、能力介绍境内非个人主体的认证的小程序,开通静态网站并后,可以免鉴权下发支持跳转到相应小程序的短信。短信中会包含支持在微信内或微信外打开的静态网站链接,用户打开页面后可一键跳转至你的小程序。 这个链接的网页在外部浏览器是通过 URL Scheme 的方式来拉起微信打开主体小程序的。 本教程将介绍如何操作开通CMS内容管理系统进而操作使用短信跳转小程序能力,全程无需写代码。 如果你想要进行自定义开发,可以参照自定义开发教程进行逐步实现。 二、操作步骤1.下载微信开发者工具访问微信公众平台工具下载页,按照自己的系统版本下载安装开发者工具。建议安装【开发版 Nightly Build】版本。 [图片] 2.打开开发者工具并登录安装完开发者工具后,打开工具会弹出二维码登录框。使用你目标小程序具有开发者权限的微信号扫码登录。 点击创建小程序+号,会有自动填写默认名称和目录,你可以直接默认,当然也可以自定义路径和名称;在APPID处填写你目标小程序的appid;后端服务选择【小程序·云开发】 [图片] 设置完毕后,点击新建,等待项目创建完成并全部加载完毕,最终效果如下: [图片] 3.开通云开发并创建环境如果你之前从未使用过云开发,点击左上角工具栏中的【云开发】按钮,会弹出一个窗口,显示如下: [图片] 此时只需要点击开通按钮,并在弹出提示框中同意【服务协议】,即可开通云开发。 注意这里的开通是创建一个新的腾讯云账号,如果你不想有太多的账号,可以选择通过已有的腾讯云账号开通,会绑定你目前的已有腾讯云账号,在统一管理和计费方面更加方便。 开通之后需要创建一个云开发环境,上一步同意之后会自动弹出创建窗口,效果如下: [图片] 这个时候,我们需要选择【按量付费:腾讯云账户扣款】,创建一个按量付费环境。 如果你之前已经使用过云开发了,建议可以创建一个新的环境。每一个微信小程序有两个免费环境,所以可以创建一个新的按量付费环境(有免费额度),或者2个环境转其中一个为按量付费环境(依然有免费额度)。 4.开通内容管理CMS我们创建一个按量计费环境之后,就进入这个环境的控制台了。我们只需要在顶部导航栏中选择【更多-内容管理】,进入内容管理开通页面,效果如下: [图片] 我们点击开通按钮,会弹出一个确认窗口,告诉我们是在环境中部署CMS应用,需要的资源。 [图片] 点击下一步后,会弹出管理员设置框,我们输入管理员的ID和密码即可。 [图片] 确定之后,内容管理就进入部署阶段,大约3分钟左右。完成之后效果如下: [图片] 我们只需要打开访问地址,通过浏览器进入内容管理平台,输入我们设置的密码就可以进入内容管理的主页了 [图片] 我们在上图所示页面,点击【创建新项目】,弹出创建项目信息框,随意输入名称和ID,比如在这里我们输入名称为「短信」,id为「SMS」 创建成功后会在我的项目中有对应名字的项目,如下图所示: [图片] 我们点击项目,进入项目的详情,如下图所示: [图片] 4.创建短信活动项目进入项目详情后,我们发现左侧栏会有【营销工具】,我们点击其中的营销活动 [图片] 在右上角点击【新建】按钮,创建一个新的活动,内容信息如下: 活动名:用来标记描述活动的名称。活动开启:是否开启活动,如果关闭活动,将不能通过页面拉起小程序。活动开闭时间:在开启时间内,才可以正常的拉起小程序。跳转中间页图片:建议海报,用于在跳转页中展示大图,可以不上传,会有默认样式。小程序跳转路径:已发布上线的小程序中页面路径,不填则默认首页。小程序跳转参数:附带路径的传入参数,一般配合小程序代码联动。我们创建一个活动后展示如上图所示 5.创建短信群发任务在左侧栏点击【群发短信】,进入群发短信页面,点击右上角新建群发,进入信息页。 [图片] 我们需要填写以下3个信息: 短信内容:实际发送时目标手机收到的短信内容,短信的前后缀无法自定义。手机号码包:发送的目标手机号,可以填写一个或多个手机号,用回车或者逗号分割。活动:选择刚才我们创建的活动。填写完毕后,我们点击【创建】按钮,系统会自动进行短信发送,此时我们便可以在目标手机号中收到短信了。 [图片] 在群发短信的页面列表中,可以查看短信的发送状态,以及每一个手机的接收情况。 6.测试短信跳转小程序点击短信的链接后,会跳转到浏览器打开链接,展示如下效果(左默认、右海报) [图片] 一般页面会自动拉起微信打开小程序,个别机型或浏览器有拦截会导致打开失败,需要手动点击按钮才可以打开。 7.投放外部平台短信的链接可以复制发布到其他外部平台。 8.查看短信监控图表打开微信开发者工具并登录,进入 云开发控制台 > 运营分析 > 监控图表 > 短信监控,即可查看短信监控曲线图、短信发送记录。 [图片] 总结短信发送能力的体验是每个有免费配额的环境首月100条,如有超过额度的需求可前往开发者工具-云开发控制台-对应按量付费环境-资源包-短信资源包,进行购买。如当前资源包无法满足需求也可通过云开发 工单 提交申请[图片]短信发送时间:8:00 - 22:00短信发送能力支持小程序和小游戏发送国内短信的号码是1069开头,尾数是运营商随机号的号码发送成功代表请求发送短信成功,短信异步下发,实际状态以运营商回执为准。没有发送成功的短信不计费,可用性参阅服务等级协议相同内容短信对同一个手机号,30 秒内发送短信条数不超过1条;对同一个手机号,1自然日内发送短信条数不超过10条CMS配置渠道投放、数据统计可参考官方文档
2021-04-07 - wx.openCustomerServiceChat中sendMessagePath应该如何填写?
wx.openCustomerServiceChat中sendMessagePath应该如何填写?小程序内正常访问的路径是:/pages/product/product?id=14,可以在sendMessagePath填写,却提示页面不存在,请问这里是如何填写的?
2022-03-02 - [拆弹时刻]4月13日前更新wx.getUserInfo和getUserProfile授权获取问题的解决方案
[图片] 论坛里有不少人疑惑新版的getUserProfile是不是已经上,同时发现开发环境中原有的老方法已经不支持了,这里我为大家集中解决下疑惑~ 1、线上是否已经不支持wx.getUserInfo老方法了? 支持!目前,根据官方文档说明:在4月13日前发布的,线上环境2.16.0基础库以下已经不支持老版方法。(4月8日更新,怀疑官方已提前发布) [图片] 本人今天4月6日10点半线上支持老方法,但是4月8日发布2.16.0以下低版本已经去掉弹窗授权了。请大家尽快更新发布新版方法 2、哪些环境已经是新方法了? 开发环境(包括但不限于IDE工具,真机调试),微信后台提供的体验版环境,且已不支持老办法。 3、新老两种方法是否并行? 线上环境:目前并行(4月13日前),但getUserProfile新方法 只在2.10.4以上版本支持。 开发环境和体验版:不并行,不支持左右横跳哈。 4、如何解决兼容性适配? 上才艺啦,呸,上代码。 先来看下原本代码的授权逻辑 [代码]//老的逻辑 wx.getSetting({ async success(res) { console.log(res.authSetting); //判断小程序用户是否授权 if (res.authSetting['scope.userInfo']) { //已授权 } else { //未授权情况 } } }) [代码] 之前主要通过wx.getSetting的方法来判断,而现在重大的改变是老方法getUserInfo不再弹窗,就算改成getUserProfile弹窗授权,新方法中getSetting中scope.userInfo 这个值并没有返回(这里跟文档有些出入,不知道官方后面会不会修正) [图片] [图片] 同时,这里需要做兼容判断,把获取到内容存在数据库中,避免反复弹窗骚扰用户。 [代码]//根据官方文档 做了一些修改 Page({ data: { userInfo: {}, hasUserInfo: false, canIUseGetUserProfile: false, }, onLoad() { //先请求自定义接口,获取上次存的useInfo wx.request({ url: 'test.api', //仅为示例,并非真实的接口地址 data: {}, success (res) { console.log(res.useInfo) //判断之前是否已获取并存储过用户信息 if(res.useInfo){ }else { //这里不要使用 wx.canIuse来判断,避免一些适配问题 if (wx.getUserProfile) { //直接使用官方推荐的方法 this.setData({ canIUseGetUserProfile: true }) } } } }) }, getUserProfile(e) { // 推荐使用wx.getUserProfile获取用户信息,开发者每次通过该接口获取用户个人信息均需用户确认 // 开发者妥善保管用户快速填写的头像昵称,避免重复弹窗 wx.getUserProfile({ desc: '需要你的信息', // 声明获取用户个人信息后的用途,后续会展示在弹窗中,请谨慎填写 success: (res) => { //这里需要将获取的 res.userInfo 存起来,你可以存在数据库,也可以存在local storage里 //wx.request...请求接口 this.setData({ userInfo: res.userInfo, hasUserInfo: true }) } }) }, getUserInfo(e) { // 不推荐使用getUserInfo获取用户信息,预计自2021年4月13日起,getUserInfo将不再弹出弹窗,并直接返回匿名的用户个人信息 this.setData({ userInfo: e.detail.userInfo, hasUserInfo: true }) }, }) [代码] [代码]<!-- html部分 ---> <block wx:if="{{!hasUserInfo}}"> <button wx:if="{{canIUseGetUserProfile}}" bindtap="getUserProfile"> 获取头像昵称 </button> <button wx:else open-type="getUserInfo" bindgetuserinfo="getUserInfo"> 获取头像昵称 </button> </block> <block wx:else> <image bindtap="bindViewTap" class="userinfo-avatar" src="{{userInfo.avatarUrl}}" mode="cover"></image> <text class="userinfo-nickname">{{userInfo.nickName}}</text> </block> [代码] [图片] 5、如何更新用户信息? 首先,目前的规则如果不弹窗,肯定是无法每次拿到用户的最新信息,为了避免每次弹窗请求授权骚扰用户,所以最好根据产品规划,定期获取用户的信息(看心情)。 6、官方接口文档 https://developers.weixin.qq.com/community/develop/doc/000cacfa20ce88df04cb468bc52801 觉得有用,请点个赞哦,让我继续分享更有动力~
2021-04-08 - 微信连Wi-Fi功能调整通知
各位开发者: 基于操作系统如iOS 13及Android Q针对Wi-Fi能力的安全策略调整,微信所提供的“portal鉴权连Wi-Fi”能力将受到影响。现发出公告。具体变更如下: 2019年08月19日起,“公众号连Wi-Fi”暂停微信portal鉴权连网方式,不再提供wifi关联公众号的功能配置后台及接口,回收第三方平台微信连Wi-Fi权限集。此外,其他功能不变,“扫二维码连网”模式依然可以正常使用。 请各位开发者及时调整,以免影响业务功能。(以下红框内容为调整功能) [图片] [图片] Android Q文档可见: Android Q 隐私权:相机和网络连接变更 Android Q 隐私权:数据和标识符变更 微信团队 2019.07.19
2019-07-22 - 微信连wifi portal型设备激活流程指南
1、设备定义: portal型设备:市面上也叫web认证型,可在选择SSID后、通过HTTP页面接受用户输入手机号码和短信验证码进行身份认证并连网。 2、添加设备方法简述: 在公众平台-微信连WiFi的【添加设备】页面、按门店填写网络名称(ssid),即可获取门店WiFi信息和设备改造说明文档。您需按文档说明改造此店WiFi的硬件鉴权协议接口和认证portal页。改造完成后、用户连网即自动添加设备mac地址到微信公众平台,即可获取微信方式连网能力和连网后服务能力。 如您无设备改造能力,建议联系此店的Wi-Fi设备商提供技术支持。 3、添加前的准备: 1)设备实际网络名称(ssid)与在公众平台微信连WiFi内填写的一致; 2)确保设备已正确连接网络,且信号良好; 3)微信安卓客户端版本大于6.2.5版本,IOS客户端版本大于6.2.5版本。 4、添加步骤 1)进入公众平台管理界面,进入【微信连wifi】->【设备管理】->【添加设备】;选择门店、设备类型和接入方式,设置网络名称。 Portal型设置设备名称可使用中文命名,新增联网方式则不需要。 [图片] 2)获取设备改造所需的门店WiFi信息,按照说明文档进行开发改造。 [图片]
2019-12-19 - 微信连Wi-Fi无法添加portal型设备选项
2019年08月19日起,“公众号连Wi-Fi”暂停微信portal鉴权连网方式,不再提供wifi关联公众号的功能配置后台及接口,回收第三方平台微信连Wi-Fi权限集。详情请参考https://developers.weixin.qq.com/community/develop/doc/000662fd08c9e86303e8567be51c01
2019-12-10 - 公众订阅号必须认证吗?
请问个体工商户申请注册的微信订阅号必须认证吗
2022-07-14 - 获取用户基本信息(UnionID机制),入参小程序的openid是否可以获取unionID?
https://developers.weixin.qq.com/doc/offiaccount/User_Management/Get_users_basic_information_UnionID.html 这个接口写着是公众号的,我同一个开发账号下,有些用户没有关注公众号,只去过小程序,那么我这个接口入参小程序用户的openid,是否能正常返回unionId呢? 毕竟unionId在同一个开发账号下是唯一的。
2022-08-16 - 【社交-笔记、社交-社区/论坛、社交-问答】类目修改指引说明
一、社交类服务,你需要了解: 1、审核流程: [图片] 2、内容安全审核机制: 小程序社交内容发布功能在进行内容安全验证时,若存在信息安全风险,需要尽快完善内容机制:①确保已接入内容安全API并要求所调用API可在小程序内任意发布的场景生效;②小程序内检测结果安全说明仅需提示用户所发布内容含违规信息即可;接口调用可参考:https://developers.weixin.qq.com/miniprogram/dev/api-backend/open-api/sec-check/security.msgSecCheck.html 二、【社交-笔记】、【社交-社区/论坛】和【社交-问答】案例解析: 1、【社交-笔记】:小程序服务内容涉及提供用户自行生成内容(文字、图片、音/视频)的记录、分享 整改建议(2选1): ①补充选择:【社交-笔记】类目 注意事项:该类目补充后首次提审需进入属地主管部门二次审核流程(报备详情),时长为7天,开发者需提前规划好提审时间 ②移除社交笔记相关功能,包括但不限于移除前端、后台代码中所存在的社交功能、社交标签等 【示例】 [图片] 2、【社交-社区/论坛】:小程序服务内容涉及提供用户自行生成内容的发布/分享/交流服务,或含【社区】等tab 整改建议(2选1): ①补充选择:【社交-社区/论坛】类目 注意事项:该类目补充后首次提审需进入属地主管部门二次审核流程(报备详情),时长为7天,开发者需提前规划好提审时间 ②移除社交论坛相关功能,包括但不限于移除前端、后台代码中所存在的社交功能、社区tab等 【示例1】:小程序涉及提供用户自行生成内容的发布/分享/交流服务,需补充选择:社交-社区/论坛类目。 [图片] 【示例2】:小程序涉及建群、拉群,需补充:社交-社区/论坛类目。 [图片] 3、【社交-问答】:涉及提供问答服务 整改建议(2选1): ①补充选择:【社交-问答】类目 注意事项:该类目补充后首次提审需进入属地主管部门二次审核流程(报备详情),时长为7天,开发者需提前规划好提审时间 ②移除社交问答功能,包括但不限于移除前端、后台代码中所存在的问答功能、社交标签等 【示例】 [图片] 附:类目所需资质 [图片] 这是一份动态更新的文档,辅助开发者提前了解社交相关的业务形态所需申请的类目,避免开发者因类目不符审核失败或因不了解涉上述类目需二次审核流程时长导致无法按期发布上线,开发者如有其他疑问,可以通过目前开放的咨询渠道反馈: 1、微信开放社区-交流专区-小程序发帖咨询-提出问题-运营相关问题 2、驳回站内信通知-客服咨询入口(MP代码审核客服入口正处于灰度开放中,若未获得灰度测试入口,开发者可前往社区发帖咨询) 我们会根据新出现的问题、相关法律法规更新或产品运营的需要及时对其内容进行修改并更新,制定新的规则,保证微信用户的体验。建议开发者反复查看以便获得最新信息,定期了解更新情况
2022-03-18 - 云开发短信跳小程序(自定义开发版)教程
写在前面如果你想要自主开发,但没有云开发相关经验,可以采用演示视频来学习本教程: [视频] 一、能力介绍境内非个人主体的认证的小程序,开通静态网站后,可以免鉴权下发支持跳转到相应小程序的短信。短信中会包含支持在微信内或微信外打开的静态网站链接,用户打开页面后可一键跳转至你的小程序。 这个链接的网页在外部浏览器是通过 URL Scheme 的方式来拉起微信打开主体小程序的。 总之,短信跳转能力的实现分为两个步骤,「配置拉起网页」和「发送短信」。本教程将介绍如何执行操作完成短信跳转小程序的能力。 如果你想要无需写代码就能完成短信跳转小程序的能力,可以参照无代码版教程进行逐步实现。 二、操作指引1、网页创建首先我们需要构建一个基础的网页应用,在任何代码编辑器创建一个 html 文件,在教程这里命名为 index.html 在这个 html 文件中输入如下代码,并根据注释提示更换自己的信息: window.onload = function(){ window.web2weapp.init({ appId: 'wx999999', //替换为自己小程序的AppID gh_ID: 'gh_999999',//替换为自己小程序的原始ID env_ID: 'tcb-env',//替换小程序底下云开发环境ID function: { name:'openMini',//提供UrlScheme服务的云函数名称 data:{} //向这个云函数中传入的自定义参数 }, path: 'pages/index/index.html' //打开小程序时的路径 }) } 以上引入的 web2weapp.js 文件是教程封装的有关拉起微信小程序的极简应用,我们直接引用即可轻松使用。 如果你想进一步学习和修改其中的一些WEB展示信息,可以前往 github 获取源码并做修改。 有关于网页拉起小程序的更多信息可以访问官方文档 如果你只想体验短信跳转功能,在执行完上述文件创建操作后,继续以下步骤。 2、创建服务云函数在上面创建网页的过程中,需要填写一个UrlScheme服务云函数。这个云函数主要用来调用微信服务端能力,获取对应的Scheme信息返回给调用前端。 我们在示例中填写的是 openMini 这个命名的云函数。 我们前往微信开发者工具,定位对应的云开发环境,创建一个云函数,名称叫做 openMini 。 在云函数目录中 index.js 文件替换输入以下代码: const cloud = require('wx-server-sdk') cloud.init() exports.main = async (event, context) => { return cloud.openapi.urlscheme.generate({ jumpWxa: { path: '', // 打开小程序时访问路径,为空则会进入主页 query: '',// 可以使用 event 传入的数据制作特定参数,无需求则为空 }, isExpire: true, //是否到期失效,如果为true需要填写到期时间,默认false expire_time: Math.round(new Date().getTime()/1000) + 3600 //我们设置为当前时间3600秒后,也就是1小时后失效 //无需求可以去掉这两个参数(isExpire,expire_time) }) } 保存代码后,在 index.js 右键,选择增量更新文件即可更新成功。 接下来,我们需要开启云函数的未登录访问权限。进入小程序云开发控制台,转到设置-权限设置,找到下方未登录,选择上几步我们统一操作的那个云开发环境(注意:第一步配置的云开发环境和云函数所在的环境,还有此步操作的环境要一致),勾选打开未登录 [图片] 接下来,前往云函数控制台,点击云函数权限,安全规则最后的修改,在弹出框中按如下配置: [图片] 3、本地测试我们在本地浏览器打开第一步创建的 index.html ;唤出控制台,如果效果如下图则证明成功! 需要注意,此处本地打开需要时HTTP协议,建议使用live server等扩展打开。不要直接在资源管理器打开到浏览器,会有跨域的问题! [图片] 4、上传本地创建好的 index.html 至静态网站托管将本地创建好的 index.html 上传至静态网站托管,在这里静态托管需要是小程序本身的云开发环境里的静态托管。 如果你上传至其他静态托管或者是服务器,你仍然可以使用外部浏览器拉起小程序的能力,但会丧失在微信浏览器用开放标签拉起小程序的功能,也不会享受到云开发短信发送跳转链接的能力。 如果你的目标小程序底下有多个云开发环境,则不需要保证云函数和静态托管在一个环境中,无所谓。 比如你有A、B两个环境,A部署了上述的云函数,但是把 index.html 部署到B的环境静态托管中了,这个是没问题的,符合各项能力要求。只需要保证第一步 index.html 网页中的云开发环境配置是云函数所在环境即可。 部署成功后,你便可以访问静态托管的所在地址了,可以通过手机外部浏览器以及微信内部浏览器测试打开小程序的能力了。 5、短信发送云函数的配置在上面创建 openMini 云函数的环境中再来一个云函数,名字叫 sendsms 。 在此云函数 index.js 中配置如下代码: const cloud = require('wx-server-sdk') cloud.init({ env: cloud.DYNAMIC_CURRENT_ENV, }) exports.main = async (event, context) => { try { const config = { env: event.env, content: event.content ? event.content : '发布了短信跳转小程序的新能力', path: event.path, phoneNumberList: event.number } const result = await cloud.openapi.cloudbase.sendSms(config) return result } catch (err) { return err } } 保存代码后,在 index.js 右键,选择增量更新文件即可更新成功。 6、测试短信发送能力在小程序代码中,在 app.js 初始化云开发后,调用云函数,示例代码如下: App({ onLaunch: function () { wx.cloud.init({ env:"tcb-env", //短信云函数所在环境ID traceUser: true }) wx.cloud.callFunction({ name:'sendsms', data:{ "env": "tcb-env",//网页上传的静态托管的环境ID "path":"/index.html",//上传的网页相对根目录的地址,如果是根目录则为/index.html "number":[ "+8616599997777" //你要发送短信的目标手机,前面需要添加「+86」 ] },success(res){ console.log(res) } }) } }) 重新编译运行后,在控制台中看到如下输出,即为测试成功: [图片] 你会在发送的目标手机中收到短信,因为短信中包含「退订回复T」字段,可能会触发手机的自动拦截机制,需要手动在拦截短信中查看。 需要注意:你可以把短信云函数和URLScheme云函数分别放置在不同云开发环境中,但必须保证所放置的云开发环境属于你操作的小程序 另外,出于防止滥用考虑,短信发送的云调用能力需要真实小程序用户访问才可以生效,你不能使用云端测试、云开发JS-SDK以及其他非wx.cloud调用方式(微信侧WEB-SDK除外),会提示如下错误: [图片] 如果你想在其他处使用此能力,可以使用服务端API来做正常HTTP调用,具体访问官方文档 7、查看短信监控图表进入 云开发控制台 > 运营分析 > 监控图表 > 短信监控,即可查看短信监控曲线图、短信发送记录。 [图片] 三、总结短信跳转小程序核心是静态网站中配置的可跳转网页,外部浏览器通过URL Scheme 来实现的,这个方式不适用于微信浏览器,需要使用开放标签才可以URL Scheme的生成是云调用能力,需要是目标小程序的云开发环境的云函数中使用才可以。并且生成的URL Scheme只能是自己小程序的打开链接,不能是任意小程序(和开放标签的任意不一致)短信发送能力的体验是每个有免费配额的环境首月100条,如有超过额度的需求可前往开发者工具-云开发控制台-对应按量付费环境-资源包-短信资源包,进行购买。如当前资源包无法满足需求也可通过云开发 工单 提交申请[图片]短信发送也是云调用能力,需要真实小程序用户调用才可以正常触发,其他方式均报错返回参数错误,出于防止滥用考虑云函数和网页的放置可以不在同一个环境中,只需要保证所属小程序一致即可。(需要保证对应环境ID都能接通)如果你不需要短信能力,可以忽略最后两个步骤CMS配置渠道投放、数据统计可参考官方文档
2021-04-07 - H5如何跳转微信小程序?
之前遇到一个需求,就是要从H5跳转到小程序里,但是微信之前一直没有提供接口做跳转,我们只能做降级方案,在要跳转小程序的地方做了一个弹窗,弹窗里面放小程序码,引导用户长按识别小程序码,然后跳转到小程序内,整个流程非常之长,转化率可想而知也是很低的。 今天刚好看到有人技术群里面问了这个问题,于是我就去看了下微信的文档,发现微信偷偷的更新的这个接口,可以让微信浏览器下的H5跳转到小程序内。 相关文档在这边: https://developers.weixin.qq.com/doc/offiaccount/OA_Web_Apps/Wechat_Open_Tag.html 用的是JS-SDK的接口,需要使用到js-sdk-1.6.0的版本才有支持,https://res.wx.qq.com/open/js/jweixin-1.6.0.js wx.config({ debug: true, // 开启调试模式,调用的所有api的返回值会在客户端alert出来,若要查看传入的参数,可以在pc端打开,参数信息会通过log打出,仅在pc端时才会打印 appId: '', // 必填,公众号的唯一标识 timestamp: , // 必填,生成签名的时间戳 nonceStr: '', // 必填,生成签名的随机串 signature: '',// 必填,签名 jsApiList: [], // 必填,需要使用的JS接口列表 openTagList: [] // 可选,需要使用的开放标签列表,例如['wx-open-launch-app'] }); 在wx.config下面多了一项openTagList,开放标签列表,目前支持配置wx-open-launch-weapp,wx-open-launch-app wx-open-launch-weapp 指H5跳转小程序 wx-open-launch-app 指H5跳转app 我们主要介绍的是wx-open-launch-weapp H5跳转小程序 先上才艺: [图片][图片][图片] html代码如下: var btn = document.getElementById('launch-btn'); btn.addEventListener('launch', function (e) { console.log('success'); }); btn.addEventListener('error', function (e) { console.log('fail', e.detail); }); username为小程序的原始id,path对应的是小程序的链接地址。之前有写过微信H5的应该会知道怎么把这段代码嵌入到之前的代码里面。 目前此功能仅开放给已认证的服务号,网页的域名要在服务号的“JS接口安全域名”下。 亲测<wx-open-launch-weapp>可以跳转到任意合法合规的小程序,是任意的小程序都能跳转!!!!这个接口真开放(不怕人干坏事?) PS: 有个坑,官方文件说的path是/a/b/c?d=1&e=2#fg,类似的这样的链接格式,但是我自己亲测如果直接使用/a/b/c?d=1&e=2#fg这样格式的链接会报页面不存在,然后我想到了小程序那边复制链接的时候会在链接后面加上.html,于是挖槽的事情发生了,把path链接格式换成/a/b/c.html?d=1&e=2#fg这样就能正常访问,不知道是微信故意这样设计的还是bug,有待考证。 然后这个接口真的可以干好多坏事,希望大家能用正确的价值观来正确使用此接口。 微信开放标签有最低的微信版本要求,以及最低的系统版本要求。 如果开发过程中出现以下情况的,要确认一下,微信版本要求为:7.0.12及以上。 系统版本要求为:iOS 10.3及以上、Android 5.0及以上。 [图片]
2020-07-09 - App跳转小程序失败?
App跳转小程序失败,开发者可先按照以下指引自查: 1、AppID和BundleId的绑定关系,还有AppID和小程序userName的绑定关系是否正确 2、参数是否正确(AppID或userName) Android开发示例: https://developers.weixin.qq.com/doc/oplatform/Mobile_App/Launching_a_Mini_Program/Android_Development_example.html iOS开发示例: https://developers.weixin.qq.com/doc/oplatform/Mobile_App/Launching_a_Mini_Program/iOS_Development_example.html
2020-01-14 - 地理位置接口新增与相关流程调整
一、地理位置接口新增说明 由于精确地理位置接口只允许部分类目的小程序申请使用,为了满足开发者在更多场景使用地理位置接口,自 2022 年 7 月 14 日起,新增获取模糊地理位置接口(wx.getFuzzyLocation)。同时为保障用户合法权益,该接口调用前需进行准入开通申请,该接口准入规则与 wx.chooseLocation 一致。 wx.getFuzzyLocation 接口说明: 1、该接口返回的是经过模糊处理的经纬度坐标; 2、该接口支持返回 wgs84 或 gcj02 两种类型的坐标; 3、该接口需要用户授权 scope.userFuzzyLocation。 二、app.json 的配置指引 为了开发者能够正常使用获取模糊地理位置等接口,以及后续对于代码提审环节的优化(见「三、地理位置接口使用流程」),自 2022 年 7 月 14 日起,开发者在使用地理位置相关接口时(共计 8 个,见表1),需要提前在 app.json 中进行配置。 1、需配置的接口列表 [图片] 表1 2、配置规则 1)在代码中使用的地理位置相关接口(共计 8 个,见表1),开发者均需要在 app.json 中 requiredPrivateInfos 配置项中声明,代码格式如下: [图片] 2)表1中模糊位置信息(序号1)和精确位置信息(序号2-5)是互斥的,即声明了模糊位置信息就无法声明精确位置信息。若同时声明模糊位置信息和精确位置信息,则在编译代码时出现错误; 3)注意:自 2022 年 7 月 14 日后发布的小程序,如果未在 app.json 中声明表1中的相关接口,则小程序调用这些接口(表1)时会出现错误,在 2022 年 7 月 14 日之前发布的小程序不受影响; 4)对于第三方开发者,需要在上传代码时通过参数在 ext.json 中声明其需调用的地理位置相关接口,配置规则和普通小程序的配置规则相同。 三、地理位置接口使用流程 自 2022 年 7 月 14 日起,开发者如需在最新版本发布后使用地理位置相关接口,除需完成接口权限开通外,还需在 app.json(或ext.json)配置环节,具体如下: 1、接口权限开通 以下 8 个接口需完成准入开通流程:wx.getFuzzylocation、wx.getLocation、wx.onLocationChange、wx.chooseAddress、wx.choosePoi、wx.chooseLocation、wx.startLocationUpdate、wx.startLocationUpdateBackground 1)普通开发者:需要在 “小程序管理后台 -「开发」-「开发管理」-「接口设置」” 中完成权限申请; 2)第三方开发者:可通过 apply_privacy_interface 接口完成权限申请。 2、app.json(或 ext.json)配置 1)普通开发者:需在 app.json 中声明其需调用的地理位置相关接口,具体配置流程见「二、app.json 的配置指引」; 2)第三方开发者:需要在上传代码时通过参数在 ext.json 中声明其需调用的地理位置相关接口(配置方式:可通过 commit 接口配置)。 同时,为了提升开发者体验,平台在代码提审环节会协助开发者对地理位置接口进行检测,如检测出代码中包含未完成准入开通的地理位置接口,平台将再次提醒开发者确认是否需使用相关接口。 1)普通开发者:若无需使用,开发者可在提审时确认不使用该接口,即可正常进行代码提审。小程序审核通过且新版本发布完成后,平台将对小程序确认不使用的接口关闭使用权限; 2)第三方开发者:若无需使用,可在提审时通过参数声明不使用该接口(声明方式:可通过 submit_audit 接口配置),即可正常进行代码提审,审核通过后发布上线,将对其声明不使用的接口关闭使用权限。 以上调整将仅对所有小程序生效。 微信团队 2022年6月1日
2023-09-26 - 微信网页授权能力调整公告
微信网页授权 能力是为了优化用户在微信内登录网站应用的体验而设计的。为进一步规范能力使用,保障用户合法权益,平台将对能力进行调整。 当开发者在网页中在不规范使用发起 snsapi_userinfo 网页授权时,微信将默认打开网页快照页模式进行基础浏览。能力调整将于 2022 年 7 月 12 日 24 时生效。 网页快照页模式介绍快照页将会默认对用户屏蔽网页授权弹窗,用户在快照页中仅可进行滑动浏览操作,其他交互将被限制,并提示用户 “该网页需获取个人信息才可使用完整服务,当前仅可浏览部分内容”。用户如需要使用完整网页服务,可轻触右下角 “使用完整服务” 按钮触发授权弹窗,用户确认后进入原网页。 开发者在快照页内所获取的头像、昵称、openId、unionId 均为虚拟账号数据;快照页与正常页面不共用缓存,快照页的缓存会在用户离开快照页时被清理;快照页内也无法使用微信其它 JS-SDK 的能力。 [图片] 微信网页授权规范授权流程需引导清晰、准确:在申请获取用户信息的弹窗出现前,应该清晰、准确地告知用户获取信息的范围及获取信息的目的;必要场景申请:在必须获取用户信息时才申请,而不是用户尚未了解服务前就强制弹窗。如使用医院挂号时才需要获取用户信息;不强制登录:提供游客模式,供用户了解网页提供的基础服务,不强制用户允许网页获取用户信息后才能使用网页服务。 常见的微信网页授权不规范使用案例强制登录:在用户打开网页时立即要求用户授权,用户拒绝后无法使用网页提供的服务;违规收集个人信息:未在网页提前告知使用个人信息的目的、方式和范围;非必要收集:非必要获取用户信息的网页,如文章、视频等,要求用户在浏览内容前登录;差别对待微信用户:同样的网页在浏览器内可以无需登录直接访问,在微信内却要求用户先登录才可访问。 微信团队 2022年5月9日
2022-05-10 - 微信自定义分享出来直接是链接,请问如何处理?
[图片] 我的手机使用微信是可以正常分享的,但是有的人不行 [图片] [图片] [图片] 分享出来是链接的微信配置也加载成功了
2021-12-21 - H5 微信分享,不显示卡片效果,只显示链接
debug提示都是正常的 [图片] [图片][图片][图片]
2022-01-07 - 为啥微信自定义分享出去是链接的形式而不是卡片的形式?
微信自定义分享成功了,但是分享出去是链接的形式!!!不是卡片的形式,客户需求是卡片的形式,到底是什么原因?
2021-12-08 - 下单账号与支付账号不一致?
微信JSAPI方式下单,传了openid给微信, 但是前端唤起支付报错“下单账号与支付账号不一致”,前端唤起支付并没有传openid参数,请问是跟哪个地方的账号比较不一致?
2021-07-07 - 关于微信支付:下单账号与支付账号不一致,请核实后再支付
在微信支付里面使用jsapi的方式,调用微信支付,提示:下单账号与支付账号不一致,请核实后再支付 我是通过userid获取openid的方式,企业微信中 只有一个用户提示这个问题,请问怎么核实问题所在?我看下单的openid和我唤起WeixinJSBridge.invoke( 这个里面的package包含的openid传递的是同一个值,这个是什么原因导致的?清除缓存啥的,重新关注啥的都不行。[图片]
2019-07-30 - getAccountInfoSync在审核时的miniProgram.envVersion值是什么?
wx.getAccountInfoSync().miniProgram.envVersion 在审核中返回是什么 因为需要在审核中调用预发布环境接口发版后调用正式版接口所有想知道如何判断处于审核中
2022-02-14 - 请问小程序审核中的运行环境是开发版,正式版还是体验版?
背景: 小程序通过__wxConfig.envVersion可以获取到小程序当前的运行环境,分为【release线上版本、trial体验版、develop开发版】。因为业务需要,我们不同版本分别访问不同的后台,然后根据这个做了请求前缀域名的区分。 遇到的问题: 今天多次提交小程序审核后,一直审核不通过,只是反馈提示请求失败,然后提交了一个新的版本,在请求失败时将小程序运行环境等信息给抛出来,才发现,小程序审核人员在审核的时候小程序的环境竟然是开发版???? [图片][图片] 想问一下,为什么小程序审核人员在审核我们的小程序的时候,竟然是develop的开发环境?同样的代码,只是改了部分样式,年前提交没问题,然后年后回来,提交审核的时候出了问题,一直找不到原因,后来在请求失败时将小程序运行环境等信息给抛出来,才发现,小程序审核人员在审核的时候小程序的环境竟然是开发版???? 我们根据__wxConfig.envVersion获取到小程序当前的运行环境并进行区分,不就是为了区分各种环境吗?不就是为了让审核人员和审核通过并上线后的用户访问线上环境,而开发和测试人员访问不同的测试环境吗?审核人员按说在审核的时候小程序的环境不应该跟发布后的版本一致,这样才有审核的意义吗?如果审核人员在审核的时候竟然是develop开发环境,那我们根据这个进行小程序运行环境的区分还有什么意义? 另外,小程序审核人员审核时小程序的运行环境,是不是也应该公布一下,让我们清楚是什么环境然后针对性处理呢?还是说小程序审核人员审核时小程序的运行环境也并不一定是develop开发环境?
2021-02-20 - 小程序提交审核的版本是什么版本?
我的项目中有两个环境,我想根据小程序的不同版本来对应不同的环境 使用wx.getAccountInfoSync().miniProgram.envVersion获取到了当前小程序的版本,已知版本有develop开发版、trial体验版、release正式版 那么小程序在提交审核中是什么版本呢?审核完成发布后又是什么版本呢?
2021-03-04 - 文娱-其他视频和文娱-视频广场指引说明
代码审核环节,将会对小程序运营的内容与所选类目是否相符进行核实,当小程序涉及视频播放、观看等服务,需要补充“文娱-其他视频”或“文娱-视频广场”类目或通过接入视频类目插件合规提审,否则代码审核环节将面临因类目不符被驳回情形。 一、视频类服务,你需要了解: [图片] 二、「其他视频」与「视频广场」案例解析: 1、【文娱-视频广场】:以视频为唯一载体展示的,集合多种类型视频内容 整改建议(2选1): (1)补充选择:【文娱-视频广场】类目 注意事项:该类目补充后首次提审需进入属地主管部门二次审核流程(报备详情),时长为7天,开发者需提前规划好提审时间 (2)移除视频播放、观看功能服务,包括但不限于移除前端、后台代码中所存在视频内容、分类标签等 【具体案例】 [图片] 2、【文娱-其他视频】:除视频外还有其他类型的信息展示形式,如下面案例,除“视频”外还有其他的资讯内容展示 整改建议(2选1): (1)补充【文娱-其他视频】类目或通过接入【文娱-其他视频】插件(插件详情);影视剧类型视频播放暂不支持使用插件视频, 附:插件添加流程:登录MP平台「设置-第三方设置-插件-添加插件-搜索视频插件」 注意事项:文娱-其他视频补充后首次提审需进入属地主管部门二次审核流程(报备详情),时长为7天,开发者需提前规划好提审时间 (2)移除视频功能服务内容,包括但不限于前端展示、后台代码移除视频内容、分类标签等 【具体案例】 [图片] 附:类目所需资质 [图片] 这是一份动态更新的文档,辅助开发者提前了解视频业务形态所需申请的类目,避免开发者因类目不符审核失败或因不了解涉上述类目需二次审核流程时长导致无法按期发布上线,开发者如有其他疑问,可以通过目前开放的咨询渠道反馈: 1、微信开放社区-交流专区-小程序发帖咨询-提出问题-运营相关问题 2、驳回站内信通知-客服咨询入口(MP代码审核客服入口正处于灰度开放中,若未获得灰度测试入口,开发者可前往社区发帖咨询) 我们会根据新出现的问题、相关法律法规更新或产品运营的需要及时对其内容进行修改并更新,制定新的规则,保证微信用户的体验。建议开发者反复查看以便获得最新信息,定期了解更新情况。
2022-05-18 - 小程序上线主营类目功能
各位小程序开发者: 为进一步规范小程序内服务类型,也为帮助用户理解小程序主要提供的服务内容。小程序平台在 2022 年 6 月 1 日上线主营类目功能。主营类目为小程序内实际运营的主要服务类型。2022 年 6 月 8 日后,未设置主营类目的帐号将无法提交代码审核。 一、设置指引 1、登录小程序管理后台,通过【账号icon】处 -【账号设置】-【基本设置】-【服务类目详情】-【设置主营类目】操作主营类目设置。 [图片] 2、可选主营类目基于已通过的服务类目生成,开发者需结合小程序主要运营服务内容,正确选择主营类目。 [图片] 补充:小程序已通过的服务类目中,有 2 个或以上的服务类目隶属同一个一级类目,在主营类目待选项会出现综合类类目(综合类主营仅供主要提供综合服务的小程序选择)。 [图片] 注意: 1、主营类目有且只有一个,选择即生效,不可删除; 2、主营类目每年有 5 次修改机会,修改即生效,请谨慎修改; 3、完成主营类目设置后才可提交代码审核; 4、主营类目选择错误可能影响代码审核结果,请正确选择。 二、其他相关问题 Q1、如何正确选择主营类目? 小程序主要提供服务对应类目为主营类目,例如下方小程序的主要服务为线上销售园艺(如:果树园艺、蔬菜园艺和观赏园艺等)、花艺、鲜花等产品在线销售及配送相关服务,需设置主营类目为【商家自营-园艺/鲜花】。类目适用范围参考:小程序开放的服务类目 [图片] Q2、主营类目选错会产生什么影响? 主营类目选错可能会影响代码审核结果,具体以代码审核结果为准。 微信团队 2022年6月1日
10-29 - 小程序用户头像昵称获取规则调整公告
更新时间:2022年11月9日由于 PC/macOS 平台「头像昵称填写能力」存在兼容性问题,对于来自低于2.27.1版本的访问,小程序通过 wx.getUserProfile 接口将正常返回用户头像昵称,插件通过 wx.getUserInfo 接口将正常返回用户头像昵称。 更新时间:2022年9月28日考虑到近期开发者对小程序用户头像昵称获取规则调整的相关反馈,平台将接口回收的截止时间由2022年10月25日延期至2022年11月8日24时。 调整背景在小程序内,开发者可以通过 wx.login 接口直接获取用户的 openId 与 unionId 信息,实现微信身份登录,支持开发者在多个小程序或其它应用间匿名关联同一用户。 同时,为了满足部分小程序业务中需要创建用户的昵称与头像的诉求,平台提供了 wx.getUserProfile 接口,支持在用户授权的前提下,快速使用自己的微信昵称头像。 但实践中发现有部分小程序,在用户刚打开小程序时就要求收集用户的微信昵称头像,或者在支付前等不合理路径上要求授权。如果用户拒绝授权,则无法使用小程序或相关功能。在已经获取用户的 openId 与 unionId 信息情况下,用户的微信昵称与头像并不是用户使用小程序的必要条件。为减少此类不合理的强迫授权情况,作出如下调整。 调整说明自 2022 年 10 月 25 日 24 时后(以下统称 “生效期” ),用户头像昵称获取规则将进行如下调整: 自生效期起,小程序 wx.getUserProfile 接口将被收回:生效期后发布的小程序新版本,通过 wx.getUserProfile 接口获取用户头像将统一返回默认灰色头像,昵称将统一返回 “微信用户”。生效期前发布的小程序版本不受影响,但如果要进行版本更新则需要进行适配。自生效期起,插件通过 wx.getUserInfo 接口获取用户昵称头像将被收回:生效期后发布的插件新版本,通过 wx.getUserInfo 接口获取用户头像将统一返回默认灰色头像,昵称将统一返回 “微信用户”。生效期前发布的插件版本不受影响,但如果要进行版本更新则需要进行适配。通过 wx.login 与 wx.getUserInfo 接口获取 openId、unionId 能力不受影响。「头像昵称填写能力」支持获取用户头像昵称:如业务需获取用户头像昵称,可以使用「头像昵称填写能力」(基础库 2.21.2 版本开始支持,覆盖iOS与安卓微信 8.0.16 以上版本),具体实践可见下方《最佳实践》。小程序 wx.getUserProfile 与插件 wx.getUserInfo 接口兼容基础库 2.27.1 以下版本的头像昵称获取需求:对于来自低版本的基础库与微信客户端的访问,小程序通过 wx.getUserProfile 接口将正常返回用户头像昵称,插件通过 wx.getUserInfo 接口将正常返回用户头像昵称,开发者可继续使用以上能力做向下兼容。对于上述 3,wx.getUserProfile 接口、wx.getUserInfo 接口、头像昵称填写能力的基础库版本支持能力详细对比见下表: [图片] *针对低版本基础库,兼容处理可参考 兼容文档 请已使用 wx.getUserProfile 接口的小程序开发者和已使用 wx.getUserInfo 接口的插件开发者尽快适配。小游戏不受本次调整影响。 最佳实践小程序可在个人中心或设置等页面使用头像昵称填写能力让用户完善个人资料: [图片] 微信团队 2022年5月9日
2023-09-26 - 小程序地理位置相关接口调整
为进一步规范开发者调用涉用户信息相关接口或功能,保障用户合法权益,平台将对如下地理位置相关接口调用实行准入开通: wx.getLocation、wx.onLocationChange、wx.chooseAddress、wx.chooseLocation、wx.choosePoi 自2022年4月18日开始,如使用以上接口,在代码审核环节将检测该接口是否已完成准入开通(申请路径:小程序管理后台 -「开发」-「开发管理」-「接口设置」),如未开通,将在代码提审环节进行拦截,请涉及相关接口的开发者尽快进行接口权限申请,第三方开发者申请方式:可通过 apply_privacy_interface 接口完成。 请广大涉及相关接口的开发者尽快进行相关接口准入申请,如未申请,后续将影响线上小程序相关接口的使用。
2023-09-26 - 微信小程序如何配置银联云闪付支付
前言: 早在9月30号,微信派公众号就发布了腾讯微信支付与银联云闪付深化支付合作与互联互通的声明,原文地址 那么问题来了,微信小程序怎么配置支持云闪付支付呢? 简简单单就一步,就可以让小程序支持云闪付支付了 登录微信支付商户后台->「产品中心」->「开发配置」页面最底部找到「支付方式配置」,点击「开启」就可以了,无需开发,无需额外配置,只要用户手机安装了云闪付app,在小程序支付时,就可以选择云闪付付款。 [图片] 注意事项 1、当前只支持小程序使用云闪付付款,微信app需要更新到最新版 2、开通后默认商户号绑定的所有小程序均开启支持云闪付支付,如有部分小程序不想开通云闪付付款,可以指定小程序appid不开启云闪付支付 [图片] 3、支持服务商模式 4、配置成功后支持停用 5、原有接口无需改动 6、如用户使用云闪付付款,中途取消付款,是会返回在选择支付方式页面 7、支持云闪付优惠 以下为实际支付测试截图 [图片][图片] [图片] 配置了没有云闪付入口等常见问题请看下面地址 https://developers.weixin.qq.com/community/develop/article/doc/000ac04bca8558f9991df282651413
2021-12-29 - 微信支付时提示appid和mch_id不匹配?
微信支付时提示appid和mch_id不匹配,还有缺少参数,公众号接入了微信支付了还需要关联吗
2019-12-18 - (15)真机定位问题技巧
开发者在开发小程序的时候可能会碰到一些这样的问题: 问题1 开发者工具上看效果没问题,但是在真机上测试不行? 问题2 有用户遇到小程序功能无法使用的问题,但无法快速定位解决? 今天我们的小故事与大家分享一些真机定位的技巧,可以解决上面两个问题。 1 vConsole开发利器和远程调试功能 针对问题1,我们提供了 vConsole 开发利器和远程调试功能,可以协助开发者在定位真机上的问题。 vConsole 的有四个Tab面板,可以先看下 Log 面板,看是否有异常信息,异常类型 thirdScriptError 是框架捕捉到的开发者的代码执行的异常,可以优先处理异常信息看是否可以解决问题。Log 面板可以看到异常出现的文件和行数。 [图片] 除了异常日志,开发者还可以通过 console.log 接口在一些关键执行路径上打日志来定位问题,这些日志会呈现在 Log 面板上。 vConsole 默认是不开启的,可以通过下面2个方法来开启: 1 开发版和体验版可以点击小程序页面右上角的...按钮打开的菜单项“打开调试”来开启 vConsole。 2 正式版没有“打开调试”的菜单项,可以先通过开发版和体验版来开启 vConsole,然后再打开正式版。或者可以预埋一个隐藏操作,比如连续点击某个 Button 多次,然后调用 API 接口 wx.setEnableDebug 来打开。 vConsole 虽然强大,但在手机上查看大量的日志信息不方便,此外,vConsole 没有断点调试、无法修改样式,定位复杂问题需要花费比较多的时间。 小程序的业务逻辑运行在 AppService 层,页面渲染在 WebView 运行,并通过微信客户端通信,因此,我们想到了可以让 AppService 运行在开发者工具,页面渲染还是在手机 WebView,两者通过网络来通信,这样借助开发者工具的调试能力,就可以实现远程调试功能。 远程调试窗口通过手机客户端扫描开发者工具上生成的二维码来打开,无需像普通手机 H5 页面调试一样,需要在手机端进行一些设置。 [图片] 打开的远程调试界面和开发者工具的模拟器的调试界面很像,需要注意的是,要在 Console 里对小程序进行调试,需要将调试的上下文切换到 VM Context 1 。 [图片] 更多的远程调试的使用方法请参考使用文档。 2 意见反馈能力 对于问题2,小程序的使用反馈来自用户投诉,这种情况用户无法联系到开发者。我们遇见过有小程序功能出现问题,用户无法使用,但投诉无门的情况,而这些问题,开发者也没有途径去收集以及处理,这就导致了小程序服务质量下降,用户流失。 为此,我们开发了“意见反馈”功能,当出现问题时,开发者可以引导用户使用“意见反馈”进行反馈,并上传日志来辅助开发者定位问题。操作过程如下: 引导用户进入小程序帐号详情页面,具体可以在小程序界面点击右上角...按钮,选择关于菜单。接着在帐号详情页面点击右上角...按钮,选择意见反馈菜单进入页面。页面可以上传图片和日志,建议用户上传异常情况的截图,以及勾选允许开发者使用小程序日志选项上传日志,反馈信息越详细,越有助于定位问题。 [图片] [图片] 如果觉得上面的操作步骤太麻烦,开发者可以通过在页面 WXML 添加下面的按钮,用户点击按钮可以直接打开“意见反馈”页面。 [图片] 开发者需要定时处理用户的反馈,这样才能保证小程序的质量。开发者可以登录小程序管理后台,进入左侧菜单客服反馈,就可以看到用户的反馈内容以及下载日志来辅助定位问题。 [图片] 为了保证日志信息足够详细,开发者需要用下面的接口在代码的关键执行路径上写日志。 [图片] wx.getLogManager 接口的更详细使用请参考文档。 希望通过这些小技巧,可以帮助大家顺畅地开发小程序。
2019-04-29 - H5页面分享不显示自定义标题和图片?
原因是H5用旧的方式申请JSAPI分享权限,后台返回无权限,因此分享的时候不能自定义,建议开发者接入新的分享方式:https://developers.weixin.qq.com/doc/offiaccount/OA_Web_Apps/JS-SDK.html ,使用新的wx.updateAppMessageShareData和wx.updateTimelineShareData接口来设置分享数据。
2020-04-23 - 自定义菜单怎么使用?
1、自定义菜单介绍 公众帐号可以在会话界面底部设置自定义菜单,菜单项可按需设定,并可为其设置响应动作。用户可以通过点击菜单项,收到您设定的响应,如收取消息、跳转链接。 [图片] 2、自定义菜单开通方法 进入微信公众平台->功能->自定义菜单->开启即可。 3、微信公众平台自定义菜单设置方法 进入微信公众平台->功能->自定义菜单->添加菜单->点击“+”添加子菜单->设置动作->发布。 1)最多创建3个一级菜单,一级菜单名称名字不多于4个汉字或8个字母。 2)每个一级菜单下的子菜单最多可创建5个,子菜单名称名字不多于8个汉字或16个字母。 3)在子菜单下可设置动作。 发送信息:可发送信息类型包括文字、图片、语音、视频和图文消息等。但未认证订阅号暂时不支持文字类型。 跳转到网页:所有公众帐号均可在自定义菜单中直接选择素材库中的图文消息作为跳转到网页的对象。认证订阅和服务号还可直接输入网址。 温馨提示:编辑中的菜单不会马上被用户看到,点击发布后会在24小时内在手机端同步显示,粉丝不会收到更新提示,若多次编辑,以最后一次保存为准。
2021-07-13 - 小程序导航栏出现返回首页按钮
目前返回首页按钮出现的条件为(需同时满足): 1. 使用了默认导航栏样式(非 custom) 2. 不是首页或 tabbar 页面(在 app.json 中定义的) 3. 是页面栈最底层页面 如果是开发者自己手写的 tabbar 导致的问题,需要在页面的 onShow 中调用 wx.hideHomeButton() https://developers.weixin.qq.com/miniprogram/dev/api/ui/navigation-bar/wx.hideHomeButton.html手动隐藏返回首页按钮。
2019-09-27 - 调用“统一下单”接口,返回:appid和mch_id不匹配
请按照以下几点检查: 1,appid或mch_id填写错误,请确认appid和mch_id是否正确 2,APPID与mch_id未绑定,请绑定后再调用接口,绑定指引请查看:商家商户号与AppID账号关联管理
2020-12-17 - 服务平台-如何查看接口剩余调用次数
操作指南 1、扫码登录服务平台 https://developers.weixin.qq.com/community/servicemarket 点击右上角【登录】,然后微信扫码登录即可 2、点击右上角头像-我的购买-数据,进入数据查看页面 [图片] 可看到有效期和已使用的调用次数 [图片] 3、点击图片可以进入数据详情页面查看实时数据 [图片] 4、点击图片可以进入数据详情页面查看历史数据 [图片] FAQ 1、资源包的次数是累加的 资源包可多次购买(免费资源包只能购买一次),购买的调用次数是累加的; 2、每天调用次数优先消耗免费资源包的(如果同时购买了免费资源包和付费资源包) 例如,9.30购买了一个OCR免费资源包(100次/天,有效期100年),10.3购买了一个付费资源包(1000次/年),那么每天(截止2021.10.3)可剩余的调用次数为:100次+(1000次-已使用的付费资源包次数) 3、免费资源包的次数是第二天自动新增 例如,今天购买了一个OCR免费资源包(100次/天,有效期100年),又购买了一个付费资源包(1000次/年),那么今天看到的调用次数总额为1100次;如果今天使用了50次,明天看到的调用次数总额仍然为1100次,而不是1000+50+100哈。
2020-10-04 - 教你解决showLoading 和 showToast显示异常的问题
问题描述 当wx.showLoading 和 wx.showToast 混合使用时,showLoading和showToast会相互覆盖对方,调用hideLoading时也会将toast内容进行隐藏。 触发场景 当我们给一个网络请求增加Loading态时,如果同时存在多个请求(A和B),如果A请求失败需要将错误信息以Toast形式展示,B请求完成后又调用了wx.hideLoading来结束Loading态,此时Toast也会立即消失,不符合展示一段时间后再隐藏的预期。 解决思路 这个问题的出现,其实是因为小程序将Toast和Loading放到同一层渲染引起的,而且缺乏一个优先级判断,也没有提供Toast、Loading是否正在显示的接口供业务侧判断。所以实现的方案是我们自己实现这套逻辑,可以使用Object.defineProperty方法重新定义原生API,业务使用方式不需要任何修改。 代码参考 [代码]// 注意此代码应该在调用原生api之前执行 let isShowLoading = false; let isShowToast = false; const { showLoading, hideLoading, showToast, hideToast } = wx; Object.defineProperty(wx, 'showLoading', { configurable: true, // 是否可以配置 enumerable: true, // 是否可迭代 writable: true, // 是否可重写 value(...param) { if (isShowToast) { // Toast优先级更高 return; } isShowLoading = true; console.log('--------showLoading--------') return showLoading.apply(this, param); // 原样移交函数参数和this } }); Object.defineProperty(wx, 'hideLoading', { configurable: true, // 是否可以配置 enumerable: true, // 是否可迭代 writable: true, // 是否可重写 value(...param) { if (isShowToast) { // Toast优先级更高 return; } isShowLoading = false; console.log('--------hideLoading--------') return hideLoading.apply(this, param); // 原样移交函数参数和this } }); Object.defineProperty(wx, 'showToast', { configurable: true, // 是否可以配置 enumerable: true, // 是否可迭代 writable: true, // 是否可重写 value(...param) { if (isShowLoading) { // Toast优先级更高 wx.hideLoading(); } isShowToast = true; console.error('--------showToast--------') return showToast.apply(this, param); // 原样移交函数参数和this } }); Object.defineProperty(wx, 'hideToast', { configurable: true, // 是否可以配置 enumerable: true, // 是否可迭代 writable: true, // 是否可重写 value(...param) { isShowToast = false; console.error('--------hideToast--------') return hideToast.apply(this, param); // 原样移交函数参数和this } }); [代码] 调整后展示逻辑为: 优先级:Toast>Loading,如果Toast正在显示,调用showLoading、hideLoading将无效 调用showToast时,如果Loading正在显示,则先调用 wx.hideLoading 隐藏Loading
2019-10-30 - 小程序登录、用户信息相关接口调整说明
公告更新时间:2021年04月15日考虑到近期开发者对小程序登录、用户信息相关接口调整的相关反馈,为优化开发者调整接口的体验,回收wx.getUserInfo接口可获取用户授权的个人信息能力的截止时间由2021年4月13日调整至2021年4月28日24时。为优化用户的使用体验,平台将进行以下调整: 2021年2月23日起,若小程序已在微信开放平台进行绑定,则通过wx.login接口获取的登录凭证可直接换取unionID2021年4月28日24时后发布的小程序新版本,无法通过wx.getUserInfo与<button open-type="getUserInfo"/>获取用户个人信息(头像、昵称、性别与地区),将直接获取匿名数据(包括userInfo与encryptedData中的用户个人信息),获取加密后的openID与unionID数据的能力不做调整。此前发布的小程序版本不受影响,但如果要进行版本更新则需要进行适配。新增getUserProfile接口(基础库2.10.4版本开始支持),可获取用户头像、昵称、性别及地区信息,开发者每次通过该接口获取用户个人信息均需用户确认。具体接口文档:《getUserProfile接口文档》由于getUserProfile接口从2.10.4版本基础库开始支持(覆盖微信7.0.9以上版本),考虑到开发者在低版本中有获取用户头像昵称的诉求,对于未支持getUserProfile的情况下,开发者可继续使用getUserInfo能力。开发者可参考getUserProfile接口文档中的示例代码进行适配。请使用了wx.getUserInfo接口或<button open-type="getUserInfo"/>的开发者尽快适配。开发者工具1.05.2103022版本开始支持getUserProfile接口调试,开发者可下载该版本进行改造。 小游戏不受本次调整影响。 一、调整背景很多开发者在打开小程序时就通过组件方式唤起getUserInfo弹窗,如果用户点击拒绝,无法使用小程序,这种做法打断了用户正常使用小程序的流程,同时也不利于小程序获取新用户。 二、调整说明通过wx.login接口获取的登录凭证可直接换取unionID 若小程序已在微信开放平台进行绑定,原wx.login接口获取的登录凭证若需换取unionID需满足以下条件: 如果开发者帐号下存在同主体的公众号,并且该用户已经关注了该公众号如果开发者帐号下存在同主体的公众号或移动应用,并且该用户已经授权登录过该公众号或移动应用2月23日后,开发者调用wx.login获取的登录凭证可以直接换取unionID,无需满足以上条件。 回收wx.getUserInfo接口可获取用户个人信息能力 4月28日24时后发布的新版本小程序,开发者调用wx.getUserInfo或<button open-type="getUserInfo"/>将不再弹出弹窗,直接返回匿名的用户个人信息,获取加密后的openID、unionID数据的能力不做调整。 具体变化如下表: [图片] 即wx.getUserInfo接口的返回参数不变,但开发者获取的userInfo为匿名信息。 [图片] 此外,针对scope.userInfo将做如下调整: 若开发者调用wx.authorize接口请求scope.userInfo授权,用户侧不会触发授权弹框,直接返回授权成功若开发者调用wx.getSetting接口请求用户的授权状态,会直接读取到scope.userInfo为true新增getUserProfile接口 若开发者需要获取用户的个人信息(头像、昵称、性别与地区),可以通过wx.getUserProfile接口进行获取,该接口从基础库2.10.4版本开始支持,该接口只返回用户个人信息,不包含用户身份标识符。该接口中desc属性(声明获取用户个人信息后的用途)后续会展示在弹窗中,请开发者谨慎填写。开发者每次通过该接口获取用户个人信息均需用户确认,请开发者妥善保管用户快速填写的头像昵称,避免重复弹窗。 插件用户信息功能页 插件申请获取用户头像昵称与用户身份标识符仍保留功能页的形式,不作调整。用户在用户信息功能页中授权之后,插件就可以直接调用 wx.login 和 wx.getUserInfo 。 三、最佳实践调整后,开发者如需获取用户身份标识符只需要调用wx.login接口即可。 开发者若需要在界面中展示用户的头像昵称信息,可以通过<open-data>组件进行渲染,该组件无需用户确认,可以在界面中直接展示。 在部分场景(如社交类小程序)中,开发者需要在获取用户的头像昵称信息,可调用wx.getUserProfile接口,开发者每次通过该接口均需用户确认,请开发者妥善处理调用接口的时机,避免过度弹出弹窗骚扰用户。 微信团队 2021年4月15日
2021-04-15 - 微信小程序获取openid的两种方法
第一种:使用云开发 这种比较简单,只需要开通云开发,创建云函数,调用云函数就可获得。 调用云函数 Promise Cloud.callFunction(Object object) 返回一个Promise对象,所以不用考虑异步问题。 callFunction说明 https://developers.weixin.qq.com/miniprogram/dev/wxcloud/reference-sdk-api/functions/Cloud.callFunction.html具体代码如下: 我这里云函数名为helloCloud // helloCloud-index.js 云函数入口函数 exports.main = async (event, context) => { let{ APPID,OPENID}=cloud.getWXContext() return { APPID, OPENID } //------------------------------------------------------ //云函数调用 wx.cloud.callFunction({ name:'helloCloud', data:{ message:'helloCloud', } }).then(res=>{ console.log(res)//res就将appid和openid返回了 //做一些后续操作,不用考虑代码的异步执行问题。 }) 第二种:不使用云开发 这种方式就需要开发者有自己的后台了。 首先需要在微信小程序调用登录开放接口 wx.login() 获取用户登陆凭证code。 wx.login()接口说明 https://developers.weixin.qq.com/miniprogram/dev/api/open-api/login/wx.login.html 然后,向自己的服务器发送请求,并将code一起发送过去。 wx.login({ success (res) { if (res.code) { //发起网络请求 wx.request({ url: '自己的服务器请求接口', data: { code: res.code } }) } else { console.log('登录失败!' + res.errMsg) } } }) 接下来,在自己的服务端调用auth.code2Session接口,我这里是用Java后台。 auth.code2Session接口说明 https://developers.weixin.qq.com/miniprogram/dev/api-backend/open-api/login/auth.code2Session.html @RequestMapping("/testopenid") public String getUserInfo(@RequestParam(name = "code") String code) throws Exception { System.out.println("code" + code); String url = "https://api.weixin.qq.com/sns/jscode2session"; url += "?appid=xxxxxxxxxxxxx";//自己的appid url += "&secret=xxxxxxxxxxxxxxxxxxx";//自己的appSecret url += "&js_code=" + code; url += "&grant_type=authorization_code"; url += "&connect_redirect=1"; String res = null; CloseableHttpClient httpClient = HttpClientBuilder.create().build(); // DefaultHttpClient(); HttpGet httpget = new HttpGet(url); //GET方式 CloseableHttpResponse response = null; // 配置信息 RequestConfig requestConfig = RequestConfig.custom() // 设置连接超时时间(单位毫秒) .setConnectTimeout(5000) // 设置请求超时时间(单位毫秒) .setConnectionRequestTimeout(5000) // socket读写超时时间(单位毫秒) .setSocketTimeout(5000) // 设置是否允许重定向(默认为true) .setRedirectsEnabled(false).build(); // 将上面的配置信息 运用到这个Get请求里 httpget.setConfig(requestConfig); // 由客户端执行(发送)Get请求 response = httpClient.execute(httpget); // 从响应模型中获取响应实体 HttpEntity responseEntity = response.getEntity(); System.out.println("响应状态为:" + response.getStatusLine()); if (responseEntity != null) { res = EntityUtils.toString(responseEntity); System.out.println("响应内容长度为:" + responseEntity.getContentLength()); System.out.println("响应内容为:" + res); } // 释放资源 if (httpClient != null) { httpClient.close(); } if (response != null) { response.close(); } JSONObject jo = JSON.parseObject(res); String openid = jo.getString("openid"); System.out.println("openid" + openid); return openid; } 部分参考 https://blog.csdn.net/qq_42940875/article/details/82706638?depth_1-utm_source=distribute.pc_relevant.none-task&utm_source=distribute.pc_relevant.none-task 这样就获得openid了。 但是在实际应用场景中,往往需要在界面展示之前获得openid来做一些操作或者什么。 用以上代码会发现,openid后台虽然获取到了,但是小程序端页面刚展示时好像并没有获取到openid,但是之后查看数据能看到openid。 这是因为wx.request()是异步请求。也就是在请求的过程中,小程序的其他工作没有因为请求而停止。 所以,我们需要将请求封装成一个返回Promise对象的函数。 廖雪峰老师讲的Promise使用 https://www.liaoxuefeng.com/wiki/1022910821149312/1023024413276544 这样就能在请求完做一些后续操作。 代码如下: //封装wx.request() function request(requestMapping, data, requestWay, contentType) { wx.showLoading({ title: '请稍后', }) return new Promise(function(resolve, reject) { console.log('请求中。。。。。') wx.request({ url: '自己的服务器地址' + requestMapping, data: data, header: { 'content-type': contentType // 默认值 }, timeout: 3000, method: requestWay, success(res) { //console.log(res) if (res.data.success == false || res.data.statusCode == 404) { reject(res) } else { resolve(res) } }, fail: (e) => { wx.showToast({ title: '连接失败', icon: 'none' })}, complete: () => { wx.hideLoading() } }) }) } //获取openid function getOpenId(app, that){ return new Promise(function (resolve, reject) { wx.login({ success: function (yes) { // 发送 res.code 到后台换取 openId, sessionKey, unionId var requestMapping = '/testopenid' var data = { code: yes.code } var requestWay = 'GET' var contentType = 'application/json' var p =request(requestMapping, data, requestWay, contentType) p.then(res => { //console.log(res) 做一些后续操作 app.globalData.openId = res.data; resolve(res) }).catch(e => { reject(e) }) }, fail(e) { console.log(e) } }) }) } 这样就解决了因为异步获取不到数据的问题。 技术有限,欢迎交流。 觉得有用请点个赞。
2020-12-05 - 在小程序里如何获取用户唯一的openid呢?
在小程序里如何获取用户唯一的openid呢?
2020-08-10 - 小程序分包相关问题,有哪位大神帮忙解答下?急急急~
1.小程序分包时候,可以只把首页放在主包,剩余三个tab页放在不同的分包中吗? 2.主包和分包之间可以共享数据吗? 3.主包和分包之间可以页面跳转吗? 4.分包的规则是什么?怎样分包,才能使小程序的结构清晰,且性能比较优?
2020-09-17 - app.json 中未定义自定义编译中指定的启动页面
[图片] [图片] [图片] 这是我设置的tabbar, 一直报错 VM11498:2 app.json 中未定义自定义编译中指定的启动页面 pages/group/index, 不晓得是什么问题
2018-07-11 - 微信开发者工具 上传失败, 系统错误 错误码,80051?
[图片] 请问各位大佬怎么解决,求帮助
2020-12-28 - HBuilderX Uniapp 微信小程序 环境及调试配置步骤
1、下载hbuilderx:https://download.dcloud.net.cn/HBuilderX.2.6.11.20200409.full.zip 2、导入代码:本地目录或者git 3、安装项目npm依赖: 代码包位置,按shift键右键选择powershell 执行 npm i 4、安装环境依赖包:工具》安装插件》选择编译时提示的需要安装的包 5、开发测试环境:选项编译 dev【运行》运行到微信模拟器】 6、发布版本:选择编译 build;【发行》小程序-微信】 7、配置微信开发者工具端口号:打开微信开发者工具》安全设置》开启》使用默认55520 8、开发与发布:开发包仅开发调试用,需要编译开发后热刷新的;编译包是发布包,可以直接提交代码审核
2020-04-27