找回密码
 立即注册
搜索

如何判断快应用是否是运行在华为手机上

1
回复
679
查看
[复制链接]

63

主题

68

帖子

655

积分

 楼主| 2021-12-23 19:52:37 来自手机 显示全部楼层 |阅读模式
我想在代码中增加判断,如果是华为手机就调用或者不掉用这个接口,有什么好办法吗?
回复

使用道具 举报

11

主题

124

帖子

675

积分

2021-12-25 14:59:21 显示全部楼层

可以通过快应用的device.getInfo(OBJECT)接口返回的engineProvider判断,该字段是华为拓展的(联盟快应用接口没有返回),代表快应用引擎的提供商,华为手机上会返回”huawei” device接口文档链接如下:https://developer.huawei.com/consumer/cn/doc/development/quickApp-References/quickapp-api-device#getInfo

getDeviceInfo: function () {
      var that = this
     device.getInfo({
       success: function (ret) {
         that.deviceInfo = JSON.stringify(ret)
         if (that.deviceInfo.indexOf('engineProvider') >= 0 && that.deviceInfo.indexOf('huawei') >= 0) {
            that.isHuawei = true
         } else {
           that.isHuawei = false
         }
        },
        fail: function (errorMsg, errorCode) {
         that.deviceInfo = errorCode + ': ' + errorMsg
       }})
   },


回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册