分享报错can not be shared without clicking
分享需要用户点击触发,且必须在 tt.onTouchEnd 中同步调用
// good case
tt.onTouchEnd(res => {
tt.shareAppMessage({
title: "测试分享",
desc: "测试描述",
extra: {
videoPath: ""
},
success() {
console.log("分享视频成功");
},
fail(e) {
console.log("分享视频失败");
}
});
});
// bad case1 必现shareAppMessage:fail can not be shared without clicking by user
const recorder = tt.getGameRecorderManager();
recorder.start({
duration: 10
});
tt.onTouchEnd(res => {
recorder.onStop((res) => {
tt.shareAppMessage({
title: "测试分享",
desc: "测试描述",
extra: {
videoPath: ""
},
success() {
console.log("分享视频成功");
},
fail(e) {
console.log("分享视频失败");
}
});
});
recorder.stop();
});
// bad case2 ios、华为部分机型偶现需要点击两次才会触发分享
tt.onTouchStart(res => {
tt.shareAppMessage({
title: "测试分享",
desc: "测试描述",
extra: {
videoPath: ""
},
success() {
console.log("分享视频成功");
},
fail(e) {
console.log("分享视频失败");
}
});
});
// bad case3 oppo部分机型点击无效can not be shared without clicking by user
tt.showModal({
title: "提示",
content: "分享录屏",
success: res => {
if(res.confirm){
tt.shareAppMessage({
title: "测试分享",
desc: "测试描述",
extra: {
videoPath: ""
},
success() {
console.log("分享视频成功");
},
fail(e) {
console.log("分享视频失败");
}
});
}
}
})