y***@qq.com
y***@qq.com
  • 发布:2024-10-30 14:56
  • 更新:2024-11-01 14:59
  • 阅读:233

【报Bug】编译打包快手小程序,在快手小程序点击订阅会报错

分类:uni-app

产品分类: uniapp/小程序/快手

PC开发环境操作系统: Windows

PC开发环境操作系统版本号: 10

HBuilderX类型: 正式

HBuilderX版本号: 4.24

第三方开发者工具版本号: 1.58

基础库版本号: 未知

项目创建方式: HBuilderX

示例代码:

clickMe: function(event) {
console.log("进来点击事件了");
const res1 = ks.requestSubscribeMessage({
tmplIds: ["ZwRAPpUOX0NTu-ddwBSRk", "Of1BwSwFRguaM6eFSKu_z"]
});
if (res1.YOUR_TEMPLATE_ID === "ACCEPT") {
console.log("同意了订阅");
} else {
console.log("拒绝了订阅");
}
return false;
},

操作步骤:

点击按钮绑定的点击事件,进去点击事件方法了,但是快手那边报错了

预期结果:

点击按钮绑定的点击事件,进去点击事件方法了,订阅成功或失败(失败给出具体错误提示)

实际结果:

点击按钮绑定的点击事件,进去点击事件方法了,但是快手那边报错了

bug描述:

详情在快手问答平台 https://developers.kuaishou.com/topic?bizType=miniprogram&tid=25508&

2024-10-30 14:56 负责人:DCloud_UNI_OttoJi 分享
已邀请:
DCloud_UNI_CHB

DCloud_UNI_CHB

看了快手问答的帖子,方法应该在methods里面啊,不能和onload平级。

  • y***@qq.com (作者)

    在methods里面没错,也进来这个方法了,但是会报错。试过了快手原生的,就没有报错,而且原生的那个点击事件方法跟methods,onload是平级的

    2024-10-30 17:40

DCloud_UNI_OttoJi

DCloud_UNI_OttoJi - 日常回复 uni-app/x 问题,如果艾特我没看到,请主动私信

我看看这个问题,你把复现压缩包在这个帖子里上传一下,我没权限下载你在快手社区里提供的 rar 压缩包.

更新:
经过搜索这个问题,在快手社区里发现里一些类似的错误报错。观察文档里订阅消息官方有一条要求需要注意

tip: 调用订阅必须发生在用户tap操作或者showModal的confirm操作之后

经过我测试 showModal 在弹窗里 confrim 之后调用订阅信息正常。经过测试使用 button 直接订阅有问题,可能需要前置的条件,比如用户在某个订阅条件下才能订阅

uni.showModal({  
                    title: '提示',  
                    content: '要订阅了',  
                    success: function(res) {  
                        if (res.confirm) {  
                            console.log('用户点击确定');  
                            const res1 = ks.requestSubscribeMessage({  
                                tmplIds: ["", ""],  
                                success(res) {  
                                    console.log('ok',res)  
                                },  
                                fail() {  
                                    console.log('fail')  
                                }  
                            });  

                        } else if (res.cancel) {  
                            console.log('用户点击取消');  
                        }  
                    }  
                })
  • y***@qq.com (作者)

    上传了,在下面

    2024-10-31 15:17

  • y***@qq.com (作者)

    运行unpackage\dist\dev\mp-kuaishou在快手开发者工具就能复现

    2024-10-31 15:21

  • y***@qq.com (作者)

    看了没?咋样了

    2024-11-01 11:23

  • DCloud_UNI_OttoJi

    回复 y***@qq.com: 可能是快手有限制,经过我测试使用 showModal 在 confirm 里可以正常订阅信息

    2024-11-01 14:40

  • y***@qq.com (作者)

    回复 DCloud_UNI_OttoJi: showModal 在 confirm 里可以正常订阅信息 是可以,有没有办法解决click事件直接调ks.requestSubscribeMessage并且不报错,这样比还需要弹框确认的体验效果更好点

    2024-11-01 17:02

  • y***@qq.com (作者)

    回复 DCloud_UNI_OttoJi: 可能需要前置的条件 button模式下,测试出来这个前置的条件是什么没? 直接用快手开发者工具写了个原生button demo,又是成功的。uniapp打包编译后的就是会有问题

    2024-11-01 17:20

  • DCloud_UNI_OttoJi

    回复 y***@qq.com: 不阻塞开发就行,直接使用 button 的写法还得在再看看

    2024-11-01 17:49

y***@qq.com

y***@qq.com (作者)

demo附件上传

要回复问题请先登录注册