注冊

小程序第三方開發(fā)平臺,小程序官方認可的第三方開發(fā)商

2020-09-27
導讀:概述 同開發(fā)普通的小程序不同,開發(fā)第三方平臺小程序具有一定的復雜性,首先需要確認三個概念: open3rd:第三方平臺,是小程序官方認可的第三方開發(fā)商 詳情 3rdMiniProgramAppid:第三...

概述

同開發(fā)普通的小程序不同,開發(fā)第三方平臺小程序具有一定的復雜性,首先需要確認三個概念:

  • open3rd:第三方平臺,是小程序官方認可的第三方開發(fā)商 詳情
  • 3rdMiniProgramAppid:第三方平臺申請的并綁定在該平臺上的小程序,用于開發(fā)小程序模板
  • extAppid:授權給第三方平臺的小程序

因為以上的這些不同,第三方平臺相關的小程序開發(fā)需要做一些特殊的處理:

  • 小程序模板的開發(fā)
  • 小程序模板結合 extAppid 的開發(fā)調試

最新版本的開發(fā)工具支持第三方平臺小程序的開發(fā)和預覽。

創(chuàng)建項目

與開發(fā)普通小程序一致,第三方平臺開發(fā)者填入相關的 3rdMiniProgramAppid ,設定項目名稱和選擇項目目錄即可創(chuàng)建項目。

對于第三方平臺小程序,可以在項目頁卡查看到相關的 open3rd 信息以及當前的第三方的 3rdMiniProgramAppid ,如若項目配置了相關的 extAppid ,那么項目頁卡中也會有相關信息。

小程序第三方開發(fā)平臺,小程序官方認可的第三方開發(fā)商

小程序模板開發(fā)

與開發(fā)普通小程序一致,開發(fā)者在開發(fā)工具上開發(fā)好相關的業(yè)務邏輯之后,在項目頁卡中提交預覽既可以在微信中查看小程序的真實表現(xiàn)。

有所不同的是,第三方平臺小程序的提交上傳是上傳至該第三方平臺的 open 帳號下的模板草稿箱中,該平臺的管理員需要自行對該模板進行相應的設置,更多請參考 開放平臺的文檔 。

extAppid 的開發(fā)調試

為了方便第三方平臺的開發(fā)者引入 extAppid 的開發(fā)調試工作,需要引入 ext.json 的概念。

ext.json 是一個配置文件,放置在小程序項目的根目錄下。

以下是一個包含了所有配置選項的 ext.json

{
  "extEnable": true,
  "extAppid": "wxf9c4501a76931b33",
  "ext": {
    "name": "wechat",
    "attr": {
      "host": "open.weixin.qq.com",
      "users": [
        "user_1",
        "user_2"
      ]
    }
  },
  "extPages": {
    "pages/logs/logs": {
      "navigationBarTitleText": "logs"
    }
  },
  "window":{
    "backgroundTextStyle":"light",
    "navigationBarBackgroundColor": "#fff",
    "navigationBarTitleText": "Demo",
    "navigationBarTextStyle":"black"
  },
  "tabBar": {
    "list": [{
      "pagePath": "pages/index/index",
      "text": "首頁"
    }, {
      "pagePath": "pages/logs/logs",
      "text": "日志"
    }]
  },
  "networkTimeout": {
    "request": 10000,
    "downloadFile": 10000
  }
}

ext.json中的配置字段分為兩種

  • 特有的字段
  • app.json 相同的字段

特有的字段

屬性 類型 必填 描述
extEnable Boolean 配置 ext.json 是否生效
extAppid String 配置 extAppid
ext Object 開發(fā)自定義的數(shù)據(jù)字段
extPages String Array 單獨設置每個頁面的 json

extEnable

extEnable 是一個 Boolean 類型的字段,用于規(guī)定當前的 ext.json 文件是否生效,開發(fā)者可以通過修改這個字段來開啟和關閉 extAppid 的結合開發(fā)。

extAppid

extAppid 是授權調試的 AppID ,例如開發(fā)者在此處填寫的是 wxf9c4501a76931b33 那么在 extEnable 為真的情況下,后續(xù)的開發(fā)邏輯都會基于 wxf9c4501a76931b33 來運行。

ext

ext 字段是開發(fā)自定義的數(shù)據(jù)字段,在小程序中可以通過 wx.getExtConfigSync 或者 wx.getExtConfig 獲取到這些配置信息。

例如上面的例子中,通過 wx.getExtConfigSync 就可以獲得 ext 字段的所有配置

{
  "name": "wechat",
  "attr": {
    "host": "open.weixin.qq.com",
    "users": [
      "user_1",
      "user_2"
    ]
  }
}

extPages

extPages 是一個對象,對象中的每個 key 應該是該小程序模板 app.json 中定義的頁面,每個 key 對應的 value 是 page.json 中所規(guī)定的各項配置。

當開發(fā)者設置這個配置以后,小程序框架會對應的修改相對應的 page 的配置信息。

app.json 相同的字段

ext.json 中的字段同 app.json 中一致時,ext.json 的字段會覆蓋 app.json 中的對應字段,例如以下的 ext.json

{
  ········
  "window":{
    "backgroundTextStyle":"light",
    "navigationBarBackgroundColor": "#fff",
    "navigationBarTitleText": "ext navigationBarTitleText",
    "navigationBarTextStyle":"black"
  }
}

那么該小程序最終的 navigationBarTitleText 應該是 ext navigationBarTitleText 。

小程序第三方開發(fā)平臺,小程序官方認可的第三方開發(fā)商

更多微信小程序開發(fā)教程,關注hi小程序。

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

第一部分:小商店是什么

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

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

第四部分:開店任務常見問題

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

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

第七部分:小程序直播

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

第九部分:小程序怎么結算

第十部分:小程序客服

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

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