微信小游戲開發(fā)文檔-小游戲轉(zhuǎn)發(fā)開放能力開發(fā)教程

2018-10-26 19:22 更新

轉(zhuǎn)發(fā)


用戶在使用微信小游戲過程中,可轉(zhuǎn)發(fā)消息給其他用戶或群聊。

轉(zhuǎn)發(fā)菜單

點擊右上角按鈕,會彈出菜單,菜單中的“轉(zhuǎn)發(fā)”選項默認不展示。通過 wx.showShareMenu()wx.hideShareMenu() 可動態(tài)顯示、隱藏這個選項。

被動轉(zhuǎn)發(fā)

用戶點擊右上角菜單中的“轉(zhuǎn)發(fā)”選項后,會觸發(fā)轉(zhuǎn)發(fā)事件,如果小游戲通過 wx.onShareAppMessage() 監(jiān)聽了這個事件,可通過返回自定義轉(zhuǎn)發(fā)參數(shù)來修改轉(zhuǎn)發(fā)卡片的內(nèi)容,否則使用默認內(nèi)容。

wx.onShareAppMessage(function () {
  // 用戶點擊了“轉(zhuǎn)發(fā)”按鈕
  return {
    title: '轉(zhuǎn)發(fā)標(biāo)題'
  }
})

主動轉(zhuǎn)發(fā)

游戲內(nèi)可通過 wx.shareAppMessage()接口直接調(diào)起轉(zhuǎn)發(fā)界面,與被動轉(zhuǎn)發(fā)類似,可以自定義轉(zhuǎn)發(fā)卡片內(nèi)容。

wx.shareAppMessage({
  title: '轉(zhuǎn)發(fā)標(biāo)題'
})

使用 Canvas 內(nèi)容作為轉(zhuǎn)發(fā)圖片

如果不指定轉(zhuǎn)發(fā)圖片,默認會顯示一個小程序的 logo。如果希望轉(zhuǎn)發(fā)的時候顯示 Canvas 的內(nèi)容,可以使用 Canvas.toTempFilePath()Canvas.toTempFilePathSync() 來生成一張本地圖片,然后把圖片路徑傳給 imageUrl 參數(shù)。

轉(zhuǎn)發(fā)出來的消息卡片中,圖片的最佳顯示比例是 5:4。

wx.onShareAppMessage(function () {
  return {
    title: '轉(zhuǎn)發(fā)標(biāo)題',
    imageUrl: canvas.toTempFilePathSync({
      destWidth: 500,
      destHeight: 400
    })
  }
})

withShareTicket 模式

通過 wx.updateShareMenu 接口可修改轉(zhuǎn)發(fā)屬性。如果設(shè)置 withShareTickettrue ,會有以下效果

  1. 選擇聯(lián)系人的時候只能選擇一個目標(biāo),不能多選
  2. 消息被轉(zhuǎn)發(fā)出去之后,在會話窗口中無法被長按二次轉(zhuǎn)發(fā)
  3. 消息轉(zhuǎn)發(fā)的目標(biāo)如果是一個群聊,則
    1. 會在轉(zhuǎn)發(fā)成功的時候獲得一個 shareTicket
    2. 每次用戶從這個消息卡片進入的時候,也會獲得一個 shareTicket,通過調(diào)用 wx.getShareInfo() 接口傳入 shareTicket 可以獲取群相關(guān)信息

修改這個屬性后,同時對主動轉(zhuǎn)發(fā)和被動轉(zhuǎn)發(fā)生效。

// 設(shè)置 withShareTicket: true
wx.updateShareMenu({
  withShareTicket: true
})


以上內(nèi)容是否對您有幫助:
在線筆記
App下載
App下載

掃描二維碼

下載編程獅App

公眾號
微信公眾號

編程獅公眾號