本章內容出自《小程序開發不求人》電子書,點擊下載完整版
小程序模板介紹
角色介紹
- 系統服務商(ISV):負責開發、維護小程序模板,基於模板實例化出商戶小程序。是被委託方。
- 商戶:委託系統服務商(ISV)基於系統服務商(ISV)提供的小程序模板實例化出商戶自己的小程序。是委託方。
模板開發模式的核心
三方小程序模板,是支付寶為系統服務商(ISV)提供批量生成小程序的能力,系統服務商(ISV)通過模板開發,得到商戶授權後,即可快速根據模板代碼給商戶快速實例化小程序。
模板開發模式下系統服務商(ISV)可以通過 API 接口批量處理商家小程序,比如系統服務商(ISV)通過模板開發模式服務了 1 萬個不同的餐飲小程序,如果需要對這 1 萬個不同的小程序做版本升級時,在模板開發模式下,可以實現用API 接口構建、提審、上架這 1 萬個不同的小程序。
在模板開發模式下商戶把自己的小程序授權給系統服務商(ISV)的三方應用,讓系統服務商(ISV)去幫商戶實現商戶小程序的代碼構建、提審以及商戶小程序上架。在商戶把商戶小程序授權給系統服務商(ISV)的三方應用後,商戶小程序的代碼只能通過服務商三方應用下的小程序模板代碼去構建。
業務特點:
- 開發流程:系統服務商(ISV)先開發小程序模板的代碼,然後通過小程序模板的代碼去構建商戶小程序的代碼。
- 快速開通:通過服務市場,商戶僅需完成訂購,即完成商戶小程序授權,通過模板快速生成自有商戶小程序。
- 批量維護:系統服務商(ISV)可代商戶實現小程序的快速批量更新。
模式簡介
系統服務商(ISV)可以通過研發小程序模板的方式,為商戶提供標準化的小程序代開發服務,快速規模化的拓展商戶。
模板開發主要有四步:
1、系統服務商(ISV) 需創建和開發第三方應用。如已經擁有,則可以沿用;
2、在第三方應用下創建小程序模板,並完成開發;
3、引導商戶完成小程序授權:
- 系統服務商(ISV)通過第三方應用,引導商戶將小程序應用授權給自己,以便進行後面模板小程序實例化的實施操作;
-
系統服務商(ISV)發佈模板為服務,並引導商戶在服務市場訂購對應小程序模板,或完成小程序應用授權。操作如下:
- 系統服務商(ISV) 引導商戶在服務市場訂購小程序模板。如商戶沒有小程序,在訂購過程中平臺會讓商戶完成小程序的創建並授權;
- 系統服務商( ISV)通過線下推廣的方式,引導商戶完成模板服務的授權。如商戶沒有小程序,在授權過程中平臺會讓商戶完成小程序的創建;
4、系統服務商(ISV)通過平臺接口完成模板小程序的構建、提審、測試、上架等操作。
小程序插件介紹
插件是小程序的一項能力,插件 2.0 體系使插件不僅像組件一樣可以嵌入到主體小程序頁面內部,而且還可以像頁面一樣提供獨立服務,可以從主體小程序進行跳轉,同時我們對主體小程序和插件進行權限隔離,在保證插件數據安全的前提下提供更多的靈活性。目前只有 支付寶官方 才能開發,但所有的開發者可以通過支付寶服務市場來獲取和使用這些插件。
每個插件有插件 ID(和小程序 AppID 同一命名空間),形態在功能和結構上和小程序類似,不同的是插件運行在主體小程序的上下文之中,對主體小程序的能力進行擴展。
目前插件主要聚焦於門店小程序的場景,用於三方開發者對各門店進行能力上的擴展,如電子發票、配送和預訂等。
主體小程序和插件的區別
插件與開放平臺、商家及用戶之間的關係
- 在開發時,插件開發商需要和開放平臺簽約獲得特色能力(如支付) 。
- 商家購買插件後,在門店啟用時,根據插件所需要獲得的信息(如門店名稱)對插件進行授權,這樣插件在運行時可獲取被授權的信息 。
- 在用戶使用過程中,喚起插件時,如果插件需要獲取用戶信息(如用戶名稱、最近消費金額和時間),需要用戶授權。
插件開發和使用涉及到的場景
場景 1:小程序及小程序模板開發
- 小程序和小程序模板(特別是後者)在開發時,需要明確是否支持插件熱插拔,如果需要支持,需預留可插拔的位置,需要定義相關的參數傳遞處理邏輯,例如對於插件所需要的不同參數的獲得與傳遞 。
- 在發佈時,需要明確自己將對插件暴露什麼樣的參數 id、類型和描述,這樣插件開發者可以通過這些約定來獲得這些參數。
場景 2:插件開發
- 插件的業務目標決定了它被喚起時需要獲得主體程序什麼樣的信息,這個時候需要定義插件期待的信息參數 id:例如對於電子發票小服務,它希望在喚起的時候能夠獲得主體小程序當前門店的名稱 。
- 另外對於插件所需要的功能包,需要和開放平臺進行簽約 。
場景 3:插件的購買和啟用
- 商家在選擇購買和啟用插件的時候,如果插件需要獲得商家小程序的信息,需顯示出來並讓商家進行明確的授權:例如對於電子發票插件,訂購和啟用時,會提示該插件需要在運行時獲得當前門店的名稱,這需要商家明確同意,否則不能購買和啟用 。
- 如果插件需要的信息在商家小程序中並不存在,則表明插件不適用於該商家,不能進行購買和啟用 。
場景 4:插件的使用
- 用戶可以在主體小程序喚起插件,例如在門店點擊電子發票進行開票。插件如果在這個時候需要獲得用戶相關的信息如用戶名稱、當前門店消費金額和時間,需要用戶明確授權 。
- 對於商家已在購買和啟用時所授權的信息如門店名稱,主體小程序在喚起插件時會根據插件所需要的參數 id 傳遞過來相關的信息 。
- 插件利用獲得的用戶信息和商家信息,運行相關業務邏輯對用戶提供服務。