0.0.12 • Published 2 years ago

@gov-api-package/widget-manager v0.0.12

Weekly downloads
-
License
ISC
Repository
-
Last release
2 years ago

widget桌面小组件 API

添加widget示意图

一、在开发之前

1.1 配置域名

接入前请将此域名 https://zw.baidusmartapps.com 添加到request的合法域名中

域名添加方式
https://zw.baidusmartapps.com开发者后台->小程序管理->设置->开发设置->服务器域名->request的合法域名

1.2 小程序需开通以下api的鉴权

需鉴权的API说明
swan.addCustomWidget添加桌面widget小组件
swan.updateCustomWidgetConfig刷新widgetAPI
swan.openBdboxWebview打开百度页面API,用于打开刷新widget的h5页面

二、接入

2.1 安装依赖

npm i @gov-api-package/widget-manager --save

2.2 API 使用

widget桌面小组件服务目前提供了初始化、判断当前宿主是否可添加、添加、更新API,具体如下表所示:

API说明
canUse判断当前宿主是否支持添加、更新widget
init初始化widget,初始化后才可以调用添加、更新的API
add添加widget桌面小组件
update更新widget桌面小组件
// 引入
import {widgetManager} from '@gov-api-package/widget-manager';

2.2.1 查询当前宿主是否可创建widget canUse

API请求参数说明:

参数类型是否必传默认值说明
apiNameStringaddCustomWidget判断创建的时候:addCustomWidget判断更新的时候:updateCustomWidgetConfig

API返回值说明:

类型说明
trueBoolean可用
falseBoolean不可用

API示例:

/**
 * 初始化widget相关的API
 */
async initWidget() {
    const isCanAdd = await widgetManager.canUse();
    isCanAdd && widgetManager.init({
        widgetType: 'express',
        addConfig: {
            failType: '1',
            successType: '1'
        }
    });
}

2.2.2 初始化widget:init

API请求参数说明:

参数类型是否必传默认值说明
widgetInfoObjectwidget信息
widgetTypeStringwidget类型
appKeyString小程序的appKey,可通过以下方式获得:开发者后台->小程序管理->基础设置->开发设置->开发者ID模块->App Key
addConfigObject不传则add方法添加成功、失败都执行以下默认操作add方法的相关配置
updateConfigObject不传则update执行成功后或失败后没有任何提示update的相关配置

widgetType可选值说明:

说明
hesuan核酸,也是桌面widget默认展示类型
express快递
riskLevel疫情风险地区
weather天气
starSign星座

addConfig参数说明:

参数类型是否必传默认值说明
failTypeString11 添加失败进行toast提示,系统不支持跳转到兜底h5。2 添加失败进行toast提示,系统不支持添加小程序桌面快捷方式。
failToastTextString添加失败addConfig.failType有值时的toast提示文案,若addConfig.failType值为2,则系统不支持widget的时候创建小程序桌面快捷方式失败也提示此文案。
successTypeString11 添加成功toast提示
successToastTextString添加成功addConfig.successType有值时的toast提示文案。
webviewPagePathStringaddConfig.failType为1时承载h5兜底页、ios机型承载h5引导页的webview页面,若不传此参数toast提示添加失败需以「/」开头
webviewParamNameStringurlwebview页面内,接收h5链接的参数

updateConfig参数说明:

参数类型是否必传默认值说明
failToastTextString更新失败的toast提示,不传则失败无提示
successToastTextString更新成功的toast提示,不传则成功无提示

API使用示例:

/**
 * 初始化widget相关的API
 */
initWidget() {
    widgetManager.init({
        widgetType: 'express',
        addConfig: {
            failType: '1',
            successType: '1'
        }
    });
}

2.2.3 添加widget add

API请求参数:

参数类型是否必传默认值说明
addInfoObject添加widget相关的参数合集
successFunction接口调用成功的回调函数
failFunction接口调用失败的回调函数

success回调参数说明:

参数类型说明
codeString添加成功返回0,若系统不支持widget,且widgetInfo.addConfig.failType为2的时候,添加桌面快捷方式也会返回0,但没有widgetId
widgetIdString添加成功后,桌面上生成的 widget 对应的实例 id

fail回调参数说明:

参数类型说明
errCodeStringadd添加失败的code
400:调用add接口,参数错误;900:调用add接口,接口异常1000:调用add接口无网络;1001:添加失败;1002:系统不支持;1003:桌面已存在(13.19以下);add添加失败的公共code
1005:系统不支持,且打开h5引导页失败init方法中,widgetInfo.addConfig.failType值为1的时侯,打开h5引导页失败的code:
1004:系统不支持,创建桌面快捷方式失败;init方法中,widgetInfo.addConfig.failType值为2的时候addToDesktop失败的code:
errMsgString添加失败的具体原因

API使用示例:

/**
 * 添加widget桌面小组件
 */
addWidgetHdl() {
    widgetManager.add({
        success: () => {
            console.log('添加成功')
        },
        fail: err => {
            console.log('添加失败')
        }
    });
}

2.2.4 更新widget update

API请求参数:

参数类型是否必传默认值说明
updateInfoObject
updateIdString若调用保存接口后刷新桌面widget时必传开发者将一些数据提交给服务端之后,接口返回的updateId
widgetIdString桌面上widget的实例id
successFunction成功的回调
failFunction失败的回调

fail回调参数说明:

参数类型说明
errCodeString1001: 更新失败更新失败的code
errMsgString更新失败的说明

API使用示例:

/**
 * 刷新widget桌面小组件
 */
updateWidgetHdl() {
    widgetManager.update({
        updateId: '123',
        widgetId: '123',
        success: () => {
            console.log('更新成功');
        },
        fail: err => {
            console.log('更新失败');
        }
    });
},
0.0.12

2 years ago

0.0.11

2 years ago

0.0.10

2 years ago

0.0.9

2 years ago

0.0.8

2 years ago

0.0.7

2 years ago

0.0.6

2 years ago

0.0.5

2 years ago

0.0.4

2 years ago

0.0.3

2 years ago

0.0.2

2 years ago

0.0.1

2 years ago