從基礎庫 2.11.3 開始支持
支持平臺:Android、iOS:微信8.0.24及以上版本
可將小程序頁面分享到朋友圈。適用于內容型頁面的分享,不適用于有較多交互的頁面分享。
設置分享狀態
小程序頁面默認不可被分享到朋友圈,開發者需主動設置“分享到朋友圈”。頁面允許被分享到朋友圈,需滿足兩個條件:
- 首先,頁面需設置允許“發送給朋友”。具體參考
Page.onShareAppMessage
接口文檔 - 滿足條件 1 后,頁面需設置允許“分享到朋友圈”,同時可自定義標題、分享圖等。具體參考
Page.onShareTimeline
接口文檔
滿足上述兩個條件的頁面,可被分享到朋友圈。
單頁模式
用戶在朋友圈打開分享的小程序頁面,并不會真正打開小程序,而是進入一個“小程序單頁模式”的頁面,“單頁模式”有以下特點:
- “單頁模式”下,頁面頂部固定有導航欄,標題顯示為當前頁面 JSON 配置的標題。底部固定有操作欄,點擊操作欄的“前往小程序”可打開小程序的當前頁面。頂部導航欄與底部操作欄均不支持自定義樣式。
- “單頁模式”默認運行的是小程序頁面內容,但由于頁面固定有頂部導航欄與底部操作欄,很可能會影響小程序頁面的布局。因此,請開發者特別注意適配“單頁模式”的頁面交互,以實現流暢完整的交互體驗。
- “單頁模式”下,一些組件或接口存在一定限制,詳情見下文單頁模式下的限制章節
頁面適配
可通過判斷場景值等于 1154 的方法來進行頁面適配。另外,在單頁模式下,可設置頂部導航欄與頁面的相交狀態,具體參考 navigationBarFit 配置。
還需留意的是,在單頁模式下,wx.getSystemInfo 接口返回的 safeArea 為整個屏幕空間。
單頁模式下的限制
小程序“單頁模式”適用于純內容展示場景,可實現的交互與接口能力有限,因此存在如下限制:
- 頁面無登錄態,與登錄相關的接口,如
wx.login
均不可用;云開發資源需開啟未登錄訪問方可在單頁模式下使用,詳見未登錄模式。 - 不允許跳轉到其它頁面,包括任何跳小程序頁面、跳其它小程序、跳微信原生頁面
- 不允許橫屏使用
- 若頁面包含 tabBar,tabBar 不會渲染,包括自定義 tabBar
- 本地存儲與小程序普通模式不共用
對于一些會產生交互的組件或接口,在點擊后調用時,會彈 toast 提示“請前往小程序使用完整服務”。為達到良好的用戶體驗,請注意適配單頁模式的接口能力,請勿大量使用被禁用的接口或組件。
禁用能力列表:
分類 | 功能點 |
---|---|
組件 | button open-type 、 camera 、 editor 、 form 、 functional-page-navigator 、 live-pusher 、 navigator 、 navigation-bar 、 official-account 、 open-data 、 web-view |
路由 | wx.redirectTo 、 wx.reLaunch 、 wx.navigateTo 、 wx.switchTab 、 wx.navigateBack |
界面 | 導航欄 、 Tab Bar |
網絡 | mDNS 、 UDP 通信 |
數據緩存 | 周期性更新 |
媒體 | VoIP 、 wx.chooseMedia 、 wx.chooseImage 、 wx.saveImageToPhotosAlbum 、 wx.chooseVideo 、 wx.saveVideoToPhotosAlbum 、 wx.getVideoInfo 、 wx.compressVideo |
位置 | wx.openLocation 、 wx.chooseLocation 、 wx.startLocationUpdateBackground 、 wx.startLocationUpdate |
轉發 | wx.getShareInfo 、 wx.showShareMenu 、 wx.hideShareMenu 、 wx.updateShareMenu |
文件 | wx.openDocument |
開放接口 | 登錄 、 小程序跳轉 、 用戶信息 、 支付 、 授權 、 設置 、 收貨地址 、 卡券 、 發票 、 生物認證 、 微信運動 、 微信紅包 |
設備 | 藍牙 、 iBeacon 、 Wi-Fi 、 NFC 、 聯系人 、 剪貼板 、 電話 、 掃碼 |
廣告 | ad 、 wx.createRewardedVideoAd 、 wx.createInterstitialAd |
運營須知
分享朋友圈能力是為了滿足純內容場景的分享訴求,濫用于營銷、誘導等行為將會被打擊。
- 小程序提供的服務中,不得存在濫用分享違規行為。如強制用戶分享行為;分享立即獲得利益的誘導行為;以及通過明示或暗示的樣式來達到誘導分享目的的行為等。詳見《微信小程序平臺運營規范》
- 在“單頁模式”下,不得誘導或強制用戶點擊“打開小程序”,應在“單頁模式”中盡可能呈現完整的內容
注意事項
- 低版本微信客戶端打開時,會進入一個升級提示頁面
- 不支持在小程序頁面內直接發起分享
- 自定義分享內容時不支持自定義頁面路徑
- 存在 web-view 組件的頁面不支持發起分享
- 支持打開開發版、體驗版,無權限人員進入時頁面會提示無權限