現象描述
如下兩張圖片,第一個可以進行微信分享,第二個微信分享報錯“wxShareAPI.sendReq return false”
// 可以微信分享的圖片:https://tws.oss.cnweisou.com/images/23068/2020/12/aq998Lb8W94ixL8142z6677WvIg19x.png
// 不可以微信分享的圖片:https://tws.oss.cnweisou.com/images/23068/2020/12/j280VVZaXnrjJAJvRSjV8JzSvHV11N.png
問題分析
微信對分享大圖有限制,上限為250kb左右,過大的圖片分享會報錯,因此需要對大圖壓縮后分享。
注意:目前的圖片壓縮接口僅支持對本地圖片壓縮,如需要壓縮網絡圖片,建議先保存到本地再進行壓縮處理。
解決方法
示例代碼如下:
share: function () { image.compressImage({ uri: "/Common/2.png", //需要壓縮的圖片,只支持本地圖片 quality: 80, ratio: 2, format: "PNG", success: function (data) { console.log(data.uri) share.share({ shareType: 0, title: "我是標題", summary: "我是摘要", imagePath: data.uri, targetUrl: "http://www.huawei.com", success: function () { console.log("share success"); }, fail: function (data, code) { console.log("handling fail, code=" + code + ", data=" + data); } }) }, fail: function (data, code) { console.log("handling fail, code=" + code); } }) }
快應用文檔
圖片API接口:
https://developer.huawei.com/consumer/cn/doc/development/quickApp-References/quickapp-api-image
第三方分享接口:
https://developer.huawei.com/consumer/cn/doc/development/quickApp-References/quickapp-api-thirdshare
原文鏈接:https://developer.huawei.com/...
原作者:Mayism