更新日期:     浏览次数:

1. 准备工作

1.1. 引入qing.js

qing.js 是一个js文件, 它是页面js与云之家客户端通信的桥梁。

通过下面的方式可以引入最新版的qing.js。

<script src="https://static.yunzhijia.com/public/js/qing/latest/qing.js"></script>

注意:你不能直接把上面的js保存到本地使用,因为它只是一个下载器。

如果你想把完整的qing.js复制到你的项目中,可以点击这个链接

1.2. 初始化

// 初始化qing.js
qing.config({})

1.3. 调用方法

通过 qing.call(方法名, 参数) 可以调用客户端的接口,例如:

// 获取个人信息
qing.call('getPersonInfo', {
    success : function(res){
        alert(JSON.stringify(res))
    }
});

每个客户端接口除了自身必须的参数外,还支持以下通用参数:

  1. success:接口调用成功时执行的回调函数。
  2. error:接口调用失败时执行的回调函数。
  3. complete:接口调用完成时执行的回调函数,无论成功或失败都会执行。

以上所述的回调函数的参数说明,如 success : function (res) { ... },这里的 res 为对象,除了每个接口自身返回的数据之外,还有两个通用属性 codeerrMsg,其值格式如下:

  1. 调用成功(success):{code: 200, errMsg: "", data: {}}
  2. 调用失败(error):{code: 500, errMsg: "不合法的图片文件大小", data: {}}

1.4. 监听事件

通过 qing.on(事件名, 回调) 可以监听客户端的事件,例如:

qing.on('appear', function () {
    alert('回到当前页面窗口')
})
事件名 说明
appear 回到当前页面窗口
disappear 离开当前页面窗口
networkAvailable 网络连接变为可用
networkDisAvailable 网络连接变为不可用
titleDoubleClick 标题栏双击
keyboardChange 键盘状态发生变化

1.5. 工具函数

除了上述与客户端通信的必须方法之外,qing还提供了一些工具函数

1.5.1. qing.checkJsApi

判断当前客户端版本是否支持指定 API 接口

qing.checkJsApi({
  jsApiList: [
    "getComments",
    "record",
    "audio"
  ],
  success: function(res){
    console.log(res);
  }
})

// res返回结果
{
    success: true,
    data: {
        getComments: true,
        record: true,
        audio: true
    }
}

1.5.2. qing.version

qing版本号

1.5.3. qing.isSupportNativeJsBridge

当前 webview 支持桥

1.5.4. qing.nativeJsBridgeVersion

当前客户端桥版本

1.5.5. qing.hasOwn

Object.hasOwnProperty

1.5.6. qing.isFunction

是否函数

1.5.7. qing.isString

是否字符串

1.5.8. qing.isNumber

是否数字

1.5.9. qing.isObject

是否对象

1.5.10. qing.isArray

是否数组

1.5.11. qing.forEach

Array.prototype.forEach

1.5.12. qing.keys

Object.keys

1.5.13. qing.ns

把字符串转换为命名空间,"a.b.c" > {a:{b:{c:{}}}}

1.5.14. qing.isWX

是否微信客户端

1.5.15. qing.isChrome

是否 chrome

1.5.16. qing.isFirefox

是否 firefox

1.5.17. qing.isOpera

是否 opera

1.5.18. qing.isSafari

是否 safari

1.5.19. qing.isIe

是否 IE 浏览器,这个用法稍微不一样,如 qing.isIe() or qing.isIe(6)

1.5.20. qing.isIphone

是否 iphone

1.5.21. qing.isIpad

是否 ipad

1.5.22. qing.isIpod

是否 ipod

1.5.23. qing.isIos

是否 ios 平台

1.5.24. qing.isAndroid

是否 Android 平台

1.5.25. qing.isAndroidPhone

是否 Android 手机

1.5.26. qing.isAndroidTable

是否 Android 平板

1.5.27. qing.isBlackberry

是否黑莓

1.5.28. qing.isMac

是否 mac 本

1.5.29. qing.isWindows

是否 win 系统

1.5.30. qing.isWindowsPhone

是否 win 手机

1.5.31. qing.isWindowsTable

是否 win 平板

1.5.32. qing.isMobile

是否手机

1.5.33. qing.isDesktop

是否 PC 机

1.5.34. qing.isTouchDevice

是否触屏设备

1.6. UserAgent字段

云之家App轻应用的UserAgent包含以下字段:

参数 说明
deviceId 设备ID
deviceName 设备名称
clientId 客户端ID,10200表示iOS端,10201表示Android端,10208表示iPad端
os 系统版本
brand 手机品牌
model 手机型号
lang 客户端当前语言,zh开头为中文,en开头为英文,目前仅支持中文和英文
fontNum 客户端当前字体大小,0表示标准字体,-1表示小号字体,1、2、3、4依次表示更大号字体(目前仅iOS端支持)

results matching ""

    No results matching ""