增加宿主配置
1 2 3 4 5 6 7 8
| ├── hostName // 宿主名称,开源平台的hostname,也是package.json的name字段 ├── program ├── package.json // 配置 ├── config.js // 入口文件 └── simulator-extensions ├── simulator-extensions-1 // 模拟器扩展一 └── simulator-extensions-2 // 模拟器扩展二
|
- 在
${hostName}/program/
目录下新建 package.json 文件,填写你的宿主配置。
hostName 使用在百度注册的 hostname,package.json 的配置如下
{
"name": "demo", // 开源平台的hostname
"appName": "示例APP", // 宿主切换是展示的名称
"version": "1.0.0", // 配置版本号
"minSwanNativeVersion": "2.0.0", // 支持的最低sdk版本
"maxSwanNativeVersion": "2.2.1", // 支持的最高sdk版本
"main": "config.js" // 入口文件
}
- 在
${hostName}/program/
目录下 package.json 的 main 入口文件内导出下列方法
/**
* 获取宿主 extensionJs 版本区间
*
* @param {string} swanJsVersion 当前 swanJs 版本号
* @param {string} swanNativeVersion 当前 swanNative 版本号
* @return {string} extensionJs semver表达式,用于更新和选择的筛选
*/
exports.getExtensionJsRange = ({swanJsVersion, swanNativeVersion}) => {
return '^1.0.0';
};
/**
* 获取宿主app版本号
*
* @param {Object=} versions 版本信息
* @param {string} versions.swanJsVersion 当前 swanJs 版本号
* @param {string} versions.swanNativeVersion 当前 swanNative 版本号
* @param {string} versions.extensionJsVersion 当前 extensionJs 版本号
* @return {string} hostAppVersion 宿主app版本号
*/
exports.getHostAppVersion = (versions) => {
return '13.0.0';
};
/**
* 非必填,获取宿主 app useragent 的后缀
*
* @param {Object} versions 同上
* @return {string} suffix useragent 后缀
*/
exports.getUserAgentSuffix = (versions) => {
return 'suffix'
};
/**
* 非必填,获取宿主自定义设备
*
* @return {Object} devices 设备信息
*/
exports.getDevices = () => {
// isProfiledScreen 是否是异形屏,其余参数和getsystemInfo一致
return {
'che': {
'model': 'che',
'pixelRatio': 2,
'system': 'android 7.0.1',
'screenWidth': 800,
'screenHeight': 400,
'isProfiledScreen': false
}
};
};