小程序模板網(wǎng)

xiaochun系列教程--微信小程序?qū)崿F(xiàn)轉(zhuǎn)發(fā)

發(fā)布時(shí)間:2017-12-27 11:08 所屬欄目:小程序開(kāi)發(fā)教程

1.當(dāng)用戶將小程序轉(zhuǎn)發(fā)到任一群聊之后,可以獲取到此次轉(zhuǎn)發(fā)的 shareTicket2.此轉(zhuǎn)發(fā)卡片在群聊中被其他用戶打開(kāi)時(shí),可以在 App.onLaunch() 或 App.onShow 獲取到另一個(gè) shareTicket3.兩步獲取到的 shareTicket 均可通 ...

 
 
 

1.當(dāng)用戶將小程序轉(zhuǎn)發(fā)到任一群聊之后,可以獲取到此次轉(zhuǎn)發(fā)的 shareTicket 
2.此轉(zhuǎn)發(fā)卡片在群聊中被其他用戶打開(kāi)時(shí),可以在 App.onLaunch() 或 App.onShow 獲取到另一個(gè) shareTicket 
3.兩步獲取到的 shareTicket 均可通過(guò) wx.getShareInfo() 接口可以獲取到相同的轉(zhuǎn)發(fā)信息。

onShareAppMessage(options)函數(shù)設(shè)置該頁(yè)面的轉(zhuǎn)發(fā)信息。

options參數(shù)說(shuō)明: 
from:轉(zhuǎn)發(fā)事件來(lái)源。button:頁(yè)面內(nèi)轉(zhuǎn)發(fā)按鈕;menu:右上角轉(zhuǎn)發(fā)菜單; 
target:如果 from 值是 button,則 target 是觸發(fā)這次轉(zhuǎn)發(fā)事件的 button,否則為 undefined

自定義字段:

return {
    title: '轉(zhuǎn)發(fā)',  // 轉(zhuǎn)發(fā)標(biāo)題(默認(rèn):當(dāng)前小程序名稱)
    path: '/pages/index/index', // 轉(zhuǎn)發(fā)路徑(當(dāng)前頁(yè)面 path ),必須是以 / 開(kāi)頭的完整路徑
    success(e) {
      // shareAppMessage: ok,
      // shareTickets 數(shù)組,每一項(xiàng)是一個(gè) shareTicket ,對(duì)應(yīng)一個(gè)轉(zhuǎn)發(fā)對(duì)象
         // 需要在頁(yè)面onLoad()事件中實(shí)現(xiàn)接口
         wx.showShareMenu({
           // 要求小程序返回分享目標(biāo)信息
           withShareTicket: true 
         });
    },
    fail(e) {
      // shareAppMessage:fail cancel
      // shareAppMessage:fail(detail message) 
    },
    complete() { }
}

wx.showShareMenu(OBJECT) 帶 shareTicket 的轉(zhuǎn)發(fā)。

1.在SDK中與真機(jī)調(diào)試的過(guò)程中,都需要設(shè)withShareTicket為true,  2.否則在真機(jī)的調(diào)試過(guò)程中,即便選擇了轉(zhuǎn)發(fā)的群聊,也不會(huì)返回shareTicket

  onLoad(e) {
    wx.showShareMenu({
      withShareTicket: true
    })
  }, onShow(e) {
    wx.showShareMenu({
      withShareTicket: true
    })
  },

wx.getShareInfo(OBJECT)獲取轉(zhuǎn)發(fā)詳細(xì)信息

if (res.shareTickets) {
  // 獲取轉(zhuǎn)發(fā)詳細(xì)信息
  wx.getShareInfo({
    shareTicket: res.shareTickets[0],
    success(res) {
      res.errMsg; // 錯(cuò)誤信息
      res.encryptedData;  //  解密后為一個(gè) JSON 結(jié)構(gòu)(openGId    群對(duì)當(dāng)前小程序的唯一 ID)
      res.iv; // 加密算法的初始向量
    },
    fail() {},
    complete() {}
  });
}

小程序在群里被打開(kāi)后,獲取情景值和shareTicket

//app.js
App({
  onLaunch: function (ops) {
    if (ops.scene == 1044) {
      console.log(ops.shareTicket)
    }
  }
})

Bug & Tip

1.頁(yè)面之間的參數(shù)傳遞,需要在onLoad()函數(shù)中接收,onShow()函數(shù)中無(wú)法接收。  2.獲取群聊中被打開(kāi)的小程序的shareTicket,需要在App.onLaunch() 或 App.onShow()。  頁(yè)面的生命周期函數(shù)中是獲取不到的。  3.將轉(zhuǎn)發(fā)內(nèi)容至單個(gè)用戶時(shí),是無(wú)法獲取到shareTicket 。



易優(yōu)小程序(企業(yè)版)+靈活api+前后代碼開(kāi)源 碼云倉(cāng)庫(kù):starfork
本文地址:http://www.u-renovate.com/wxmini/doc/course/18277.html 復(fù)制鏈接 如需定制請(qǐng)聯(lián)系易優(yōu)客服咨詢:800182392 點(diǎn)擊咨詢
QQ在線咨詢
AI智能客服 ×