使用APICloud開發App分享圖片到微信功能
在專案中新增wx模組,呼叫shareImage方法,實現分享功能。官方文件
官方示例程式碼:
var wx = api.require(`wx`);
wx.shareImage({
apiKey: ``, // 可選項)從微信開放平臺獲取的 appid,若不傳則從當前 widget 的 config.xml 中讀取。
scene: `session`, // [`session`, `timeline`, `favorite`](會話,朋友圈,收藏)預設朋友圈。
thumb: `widget://a.jpg`, // 縮圖片的地址,支援 fs://、widget:// 協議。大小不能超過32K,若 contentUrl 為本地圖片地址則本引數忽略,需要路徑包含圖片格式字尾,否則如果原圖片為非png格式,會分享失敗
contentUrl: `widget://b.jpg` // 分享圖片的 url 地址(支援 fs://、widget://),長度不能超過10M
}, function(ret, err) {
if (ret.status) {
alert(`分享成功`);
} else {
alert(err.code);
}
});
專案程式碼:
function shareImg () {
var wx = require(`wx`);
// 首先先將圖片下載到本地
api.download({
url: `http://xxx.xxx.xxx/xx.jpg`, // 圖片地址
savePath: `fs://xxx/xxx.jpg`, // 圖片儲存路徑
report: true,
cache: true,
allowResume: true
}, function(res, err) {
if (ret.state == 1) {
console.log(`下載成功`)
wx.shareImage({
// apiKey: ``,
scene: `session`,
thumb: `widget://xxx.xxx.jpg`, // 不知道為什麼這裡使用fs:// 死活都有問題,無法分享
contentUrl: `fs://xxx.xxx.jpg`
}, function(ret, err){
if (ret.status) {
alert(`分享成功`)
} else {
alert(err.code)
}
})
} else {
console.log(`下載失敗`)
console.log(err)
}
})
}