調起方法

2020-02-15 02:03 更新

名詞解釋

  1. shareOption——系統調用開發(fā)者注冊的回調時,傳遞給回調的數據,包括用戶選擇的調起方式等
  2. shareParam——開發(fā)者最終傳遞給發(fā)布器的數據,可以根據約定傳入部分自定義數據


入口控制

1.如果顯示定義了 ?[Page|tt].onShareAppMessage(callback)? 方法,在小程序右上角膠囊按鈕里會自動帶上「分享」「發(fā)頭條」等入口。其中小程序里的方法注冊在 ?Page? 上,小游戲直接掛在 ?tt? 上

  1. 無論是否顯示定義上述方法,均可以通過 ?tt.showShareMenu()? 和 ?tt.hideShareMenu()? 控制入口的顯示與隱藏。
  2. 開發(fā)者在開發(fā)小程序時,還可以在 TTML/WXML 文件里通過 ?button? 組件自定義入口。其中通過 ?data-channel? 字段指定調起方式(默認為「分享」),如:
    <button class="custom-share-button" open-type="share" data-channel="video" data-qrcode="inv34+23==">Click Me!</button>
  3. 開發(fā)者在開發(fā)小游戲時,可以在圖形界面繪制自定義按鈕,在按鈕的回調中調用 ?tt.shareAppMessage(shareParam)? 來直接調起發(fā)布器。


調用邏輯

如上圖所示,調用可大體分為主動調用(C)和被動調用(A、B、C)兩種模式。小程序只能使用被動調用,小游戲可以使用主動和被動兩種。


主動調用

開發(fā)者直接通過 ?tt.shareAppMessage(shareParam)? 方法,將 shareParam 傳遞給系統發(fā)布器即可。


被動調用

無論用戶點擊何種入口,小程序框架均會將 shareOption 帶給 ?[Page|tt].onShareAppMessage(callback)? 方法中注冊的 ?callback? 回調。開發(fā)者可以在回調中根據參數處理相應邏輯,最后返回 shareParam 即可。如:

Page({
  onShareAppMessage(function (shareOption) {
    switch(shareOption.channel){
      case 'video':
        return {
          extra: {
            videoPath : shareOption.target.dataset.path
          }
        };
        break;
      case 'qrcode':
        ...
        break;
      default:
        ...
        break;
    }
  }),
});

其中,shareOption 的結構如下:

{
  from: '',     // 合法值包括 button 和 menu,分別對應兩種被動分享方式
  target: null, // 當from=button時,target指向<button>對象,當from=menu時,target為null
  channel: '',  // 預設的分享方式(通過button分享時,取值自data-channel)
}

shareParam 說明 一個典型的 shareParam 的形式如下,大體上分為基礎參數和擴展參數 extra 兩部分:

{
  channel: '',
  title: '',
  imageUrl: '',
  path: '',
  extra: {
    videoPath: ''
  }
}


基礎參數說明

所有的分享/發(fā)布內容都需要經過獨立的審核后才會放出。 開發(fā)者可以在開放平臺后臺預先設置好一些分享默認內容,當實際代碼所指定的內容審核通過前,會展示該默認內容。

姓名說明
channel指定發(fā)布器的調用方式,默認為 share。具體內容見下方「特殊參數說明」
title想要分享/發(fā)布的內容標題。
imageUrl想要分享/發(fā)布的內容,當調用方式支持傳入一張圖片時,可以通過此參數指定。
query/path分享/發(fā)布的內容會自動與小程序綁定,同時在 UI 上提供進入小程序的入口。開發(fā)者如果想為該入口添加參數可以通過設置 query/path 實現。其中小程序需要傳遞 path 字段,小游戲是 query 字段。


擴展參數 extra 說明

功能描述channel支持的 app基礎參數說明extra 參數說明
分享面板share今日頭條抖音
發(fā)布圖文內容article今日頭條
發(fā)布視頻內容video今日頭條1. 不支持 imageUrl,title 參數
2. 如果無需指定 videoPath 時請勿為該參數賦值,否則會導致進入錯誤的發(fā)布器頁面
可以指定一個本地視頻直接進入編輯頁面 videoPath(類型是 string)
發(fā)布視頻內容video抖音1. 不支持 imageUrl 參數
2. title 參數在發(fā)布過程中對用戶透明,經審核后可放出
1. 話題列表 videoTopics(類型是 string[])
2. 可以指定一個本地視頻直接進入編輯頁面 videoPath(類型是 string)
以上內容是否對您有幫助:
在線筆記
App下載
App下載

掃描二維碼

下載編程獅App

公眾號
微信公眾號

編程獅公眾號