QQ小程序 周期性更新
基礎庫 1.14.0 版本開始支持。
周期性更新能夠在用戶未打開小程序的情況下,也能從服務器提前拉取數據,當用戶打開小程序時可以更快地渲染頁面,減少用戶等待時間,增強在弱網條件下的可用性。
使用流程
1. 配置數據下載地址
登錄小程序管理后臺,進入設置 -> 開發設置 -> 周期性更新,點擊啟用,填寫數據下載地址,只支持 HTTPS。
2. 設置 TOKEN
第一次啟動小程序時,調用 qq.setBackgroundFetchToken() 設置一個 TOKEN 字符串,可以跟用戶態相關,會在后續 QQ 客戶端向開發者服務器請求時帶上,便于給后者校驗請求合法性。
App({
onLaunch() {
qq.setBackgroundFetchToken({
token: "xxx"
});
}
});
3. QQ 客戶端定期拉取數據
QQ 客戶端會在一定的網絡條件下,每隔 12 小時(以上一次成功更新的時間為準)向配置的數據下載地址發起一個 HTTP GET 請求,其中包含的 query 參數如下,數據獲取到后會將整個 HTTP body 緩存到本地。
屬性 | 類型 | 說明 |
---|---|---|
appid | String | 小程序標識 |
token | String | 前面設置的 TOKEN |
timestamp | Number | 時間戳,微信客戶端發起請求的時間 |
query 參數會使用 urlencode 處理
開發者服務器接口返回的數據類型應為字符串,且大小應不超過 256KB,否則將無法緩存數據
- 讀取數據 用戶啟動小程序時,調用 qq.getBackgroundFetchData() 獲取已緩存到本地的數據。 示例:
App({
onLaunch() {
qq.getBackgroundFetchData({
fetchType: "periodic",
success(res) {
console.log(res.fetchedData); // 緩存數據
console.log(res.timeStamp); // 客戶端拿到緩存數據的時間戳
}
});
}
});
5. 調試方法
暫不支持,開發者工具后續版本將進行更新
以上內容是否對您有幫助: