QQ小游戲 轉(zhuǎn)發(fā)

2020-07-16 13:39 更新

注: shareTicket Android客戶端從8.0.5版本、iOS客戶端從8.0.6版本開始支持。 用戶在使用小游戲過程中,可轉(zhuǎn)發(fā)消息給其他用戶或群聊。

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

點(diǎn)擊右上角按鈕,會(huì)彈出菜單,菜單中的“轉(zhuǎn)發(fā)”選項(xiàng)默認(rèn)不展示。通過 qq.showShareMenu() 和 qq.hideShareMenu() 可動(dòng)態(tài)顯示、隱藏這個(gè)選項(xiàng)。

被動(dòng)轉(zhuǎn)發(fā)

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

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

主動(dòng)轉(zhuǎn)發(fā)

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

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

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

如果不指定轉(zhuǎn)發(fā)圖片,默認(rèn)會(huì)顯示一個(gè)小程序的 logo。如果希望轉(zhuǎn)發(fā)的時(shí)候顯示 Canvas 的內(nèi)容,可以使用 Canvas.toTempFilePath() 或 Canvas.toTempFilePathSync() 來生成一張本地圖片,然后把圖片路徑傳給 imageUrl 參數(shù)。 轉(zhuǎn)發(fā)出來的消息卡片中,圖片的最佳顯示比例是 5:4。

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

獲取更多轉(zhuǎn)發(fā)信息

通過 qq.updateShareMenu 接口可修改轉(zhuǎn)發(fā)屬性。如果設(shè)置 withShareTicket 為 true ,會(huì)有以下效果 選擇聯(lián)系人的時(shí)候只能選擇一個(gè)目標(biāo),不能多選 消息被轉(zhuǎn)發(fā)出去之后,在會(huì)話窗口中無法被長按二次轉(zhuǎn)發(fā) 消息轉(zhuǎn)發(fā)的目標(biāo)如果是一個(gè)群聊,則 會(huì)在轉(zhuǎn)發(fā)成功的時(shí)候獲得一個(gè) shareTicket 每次用戶從這個(gè)消息卡片進(jìn)入的時(shí)候,也會(huì)獲得一個(gè) shareTicket,通過調(diào)用 qq.getShareInfo() 接口傳入 shareTicket 可以獲取群相關(guān)信息 修改這個(gè)屬性后,同時(shí)對主動(dòng)轉(zhuǎn)發(fā)和被動(dòng)轉(zhuǎn)發(fā)生效。

// 設(shè)置 withShareTicket: true
qq.updateShareMenu({
  withShareTicket: true
})
以上內(nèi)容是否對您有幫助:
在線筆記
App下載
App下載

掃描二維碼

下載編程獅App

公眾號
微信公眾號

編程獅公眾號