注冊

最新通過小程序獲取群名稱ID代碼開發(fā)解讀

2017-09-13
導(dǎo)讀:最新消息,hi商學(xué)院訊最近微信小程序除了新的規(guī)則,就是可以獲得群ID和群名稱,不過很多人在實際操作當(dāng)中,卻發(fā)現(xiàn)群名稱不能獲得,下面hi商學(xué)院記者告訴你微信小程序開發(fā)教程之...

最新通過小程序獲取群名稱ID代碼開發(fā)解讀

  最新消息,hi商學(xué)院訊最近微信小程序除了新的規(guī)則,就是可以獲得群ID和群名稱,不過很多人在實際操作當(dāng)中,卻發(fā)現(xiàn)群名稱不能獲得,下面hi商學(xué)院記者告訴你微信小程序開發(fā)教程之群名稱獲取代碼解讀。

  微信宣布:「為了更好的針對群場景提供個性化服務(wù),當(dāng)用戶在群聊中點擊小程序分享卡片時,小程序支持開發(fā)者獲取群 ID 和群名稱」。但隨后沒多久,發(fā)現(xiàn)小程序只返回了群 ID,并沒有給我們?nèi)好,F(xiàn)在,終于有方法可以顯示群名稱啦!

  直到現(xiàn)在,網(wǎng)上還可以看到很多「開發(fā)者可以獲取群名稱」這樣的新聞。在微信剛宣布的時候確實同時返回了群 ID 和 群名稱,但隨后就只能獲取到群 ID 了。估計會有很多開發(fā)者跟我一樣被文章誤導(dǎo)了,還以為是自己代碼有問題。

  至于微信為什么這么做,官方也作出了解釋:

  這就導(dǎo)致了,目前很多和群關(guān)聯(lián)的小程序,一進去就要設(shè)置群備注的尷尬現(xiàn)象。

  為了保護用戶的隱私,同時滿足開發(fā)的需求,微信需要找到一種獲取不到,但又允許展示的方法。

  現(xiàn)在微信找到方法了。

  下面我們看看如何在小程序里面顯示群名稱。

  獲取群 ID

  顯示群名的前提是,已經(jīng)獲取到了該群的群 ID。要是你之前已經(jīng)對獲取群 ID 有所了解,可以直接跳到后面看。

  我們通過將小程序轉(zhuǎn)發(fā)到群里,獲取到對應(yīng)群的群 ID。

  首先,需要設(shè)置顯示當(dāng)前頁面的轉(zhuǎn)發(fā)按鈕,轉(zhuǎn)發(fā)后返回 ShareTicket,有了它才能去獲取群 ID:

  wx.showShareMenu({

  withShareTicket: true

  })

  在代碼里面添加 onShareAppMessage 方法,它是用來控制轉(zhuǎn)發(fā)功能的。轉(zhuǎn)發(fā)成功后,拿到 ShareTicket,再調(diào)用 wx.getShareInfo 獲取轉(zhuǎn)發(fā)目標的信息。代碼如下:

  onShareAppMessage: function () {

  var that = this

  return {

  title: "轉(zhuǎn)發(fā)標題",

  path: '頁面路徑',

  success(res) {

  wx.getShareInfo({

  shareTicket: res.shareTickets[0],

  success(res) {

  console.log(res.encryptedData)

  console.log(res.iv)

  // 后臺解密,獲取 openGId

  }

  })

  }

  }

  }

  和 wx.getUserInfo 一樣,微信給了我們一段加密的數(shù)據(jù),加密的方式也是一樣的,后臺可以用同一段代碼進行解密。解密后的格式如下:

  {

  "openGId": "xxxxxxxx",

  "watermark": {

  "appid": "xxxxxxxx",

  "timestamp": 1499841984

  }

  }

  openGId 就是我們要的群 ID 了,把它保存下來。

  顯示群名

  下面我們來到布局文件。

  小程序剛更新,多了一個新組件 open-data:

  用起來很簡單,在要顯示群名的地方,使用以下代碼:

  將 openGId 傳入,就會顯示出群名稱了。妥妥的。

  但這個東西是基礎(chǔ)庫 1.4.0 才有的東西,最好還是用 wx.getSystemInfo 獲取到當(dāng)前客戶端的基礎(chǔ)庫版本,做一下低版本兼容,更多了解微信小程序開發(fā)教程

重磅推薦:小程序開店目錄

第一部分:小商店是什么

第二部分:如何開通一個小商店

第三部分:如何登錄小商店

第四部分:開店任務(wù)常見問題

第五部分:小商店可以賣什么

第六部分:HiShop小程序特色功能

第七部分:小程序直播

第八部分:小程序收貨/物流

第九部分:小程序怎么結(jié)算

第十部分:小程序客服

第十一部分:電商創(chuàng)業(yè)

第十二部分:小程序游戲開發(fā)