# 轉(zhuǎn)發(fā)
# 獲取更多轉(zhuǎn)發(fā)信息
通常開發(fā)者希望轉(zhuǎn)發(fā)出去的小程序被二次打開的時(shí)候能夠獲取到一些信息,例如群的標(biāo)識(shí)?,F(xiàn)在通過調(diào)用 wx.showShareMenu 并且設(shè)置 withShareTicket 為 true ,當(dāng)用戶將小程序轉(zhuǎn)發(fā)到任一群聊之后,此轉(zhuǎn)發(fā)卡片在群聊中被其他用戶打開時(shí),可以在 App.onLaunch 或 App.onShow 獲取到一個(gè) shareTicket。通過調(diào)用 wx.getShareInfo 接口傳入此 shareTicket 可以獲取到轉(zhuǎn)發(fā)信息。
# 頁面內(nèi)發(fā)起轉(zhuǎn)發(fā)
基礎(chǔ)庫 1.2.0 開始支持,低版本需做兼容處理。
通過給 button 組件設(shè)置屬性 open-type="share",可以在用戶點(diǎn)擊按鈕后觸發(fā) Page.onShareAppMessage 事件,相關(guān)組件:button。
# 使用指引
轉(zhuǎn)發(fā)按鈕,旨在幫助用戶更流暢地與好友分享內(nèi)容和服務(wù)。轉(zhuǎn)發(fā),應(yīng)是用戶自發(fā)的行為,且在需要時(shí)觸手可及。開發(fā)者在使用時(shí)若遵從以下指引,會(huì)得到更佳的用戶體驗(yàn)。
- 含義清晰:明確、一目了然的圖形按鈕,將為用戶減少理解的時(shí)間。在我們的資源下載中心,你可以找到這樣的按鈕素材并直接使用。或者你可以根據(jù)自己業(yè)務(wù)的設(shè)計(jì)風(fēng)格,靈活設(shè)計(jì)含義清晰的按鈕的樣式。當(dāng)然,你也可以直接使用帶文案的按鈕,“轉(zhuǎn)發(fā)給好友”,它也足夠明確。
- 方便點(diǎn)擊:按鈕點(diǎn)擊熱區(qū)不宜過小,亦不宜過大。同時(shí),轉(zhuǎn)發(fā)按鈕與其他按鈕一樣,熱區(qū)也不宜過密,以免用戶誤操作。
- 按需出現(xiàn):并非所有頁面都適合放置轉(zhuǎn)發(fā)按鈕,涉及用戶隱私的非公開內(nèi)容,或可能打斷用戶完成當(dāng)前操作體驗(yàn)的場(chǎng)景,該功能并不推薦使用。同時(shí),由于轉(zhuǎn)發(fā)過程中,我們將截取用戶屏幕圖像作為配圖,因此,需要注意幫助用戶屏蔽個(gè)人信息。
- 尊重意愿:理所當(dāng)然,并非所有的用戶,都喜歡與朋友分享你的小程序。因此,它不應(yīng)該成為一個(gè)誘導(dǎo)或強(qiáng)制行為,如轉(zhuǎn)發(fā)后才能解鎖某項(xiàng)功能等。請(qǐng)注意,這類做法不僅不被推薦,還可能違反我們的《運(yùn)營規(guī)范》,我們強(qiáng)烈建議你在使用前閱讀這部分內(nèi)容。
以上,我們陳列了最重要的幾點(diǎn),如果你有時(shí)間,可以完整瀏覽《設(shè)計(jì)指南》,相信會(huì)有更多的收獲。
# 注意事項(xiàng)
- 不自定義轉(zhuǎn)發(fā)圖片的情況下,默認(rèn)會(huì)取當(dāng)前頁面,從頂部開始,高度為 80% 屏幕寬度的圖像作為轉(zhuǎn)發(fā)圖片。
- 轉(zhuǎn)發(fā)的調(diào)試支持請(qǐng)查看 普通轉(zhuǎn)發(fā)的調(diào)試支持 和 帶 shareTicket 的轉(zhuǎn)發(fā)
- 轉(zhuǎn)發(fā)非私密消息時(shí),只有轉(zhuǎn)發(fā)到群聊中打開才可以獲取到
shareTicket返回值,單聊沒有shareTicket。轉(zhuǎn)發(fā)私密消息時(shí),群聊和單聊都可獲取到shareTicket。私密消息詳見 私密消息使用指南 shareTicket僅在當(dāng)前小程序生命周期內(nèi)有效- 由于策略變動(dòng),小程序群相關(guān)能力進(jìn)行調(diào)整,開發(fā)者可先使用 wx.getShareInfo 接口中的群 ID 進(jìn)行功能開發(fā)。
- 微信7.0.12開始,支持群主轉(zhuǎn)發(fā)小程序時(shí)同時(shí)把消息設(shè)為該群的群待辦消息,群待辦消息會(huì)以氣泡形式出現(xiàn)在聊天窗口底部。默認(rèn)每次轉(zhuǎn)發(fā)一個(gè)群待辦消息,都會(huì)生成一個(gè)待辦消息氣泡。通過 wx.updateShareMenu 接口修改
toDoActivityId屬性可以把多個(gè)待辦消息聚合為同一個(gè),即轉(zhuǎn)發(fā)相同toDoActivityId的群待辦消息,只會(huì)出現(xiàn)一個(gè)待辦消息氣泡。toDoActivityId需要在轉(zhuǎn)發(fā)前通過 updatableMessage.createActivityId 接口創(chuàng)建。