# userAgent 客户端用户代理检测

通常情况下,userAgent是检测客户端环境最为快捷也最便利的方式,但对于业务开发者而言,它们并不一定知晓每种客户端环境的UA关键字是什么,并且在每个项目中编写一次UA判断的代码也显得非常累赘。

UA模块根据各端的UserAgent关键字,提供快速判别环境的Api集合,同时通过source枚举区分不同小程序环境,解决基础Header与Cookie难以统一组织的问题。

# Api域:

const UA = kreator.userAgent;
方法名称 描述 返回值 备注
checkAppVersion(version) 检测当前app版本是否大于指定版本。
boolean 例如传入5.1.1,当前App版本为5.1.0,则为false。
getUserAgent() 返回当前环境的完整userAgent string
isIOS() 判断当前系统为iOS boolean
isHnSkeleton() 判断当前环境为Cabinx骨骼屏生产环境 boolean 通过Cabinx-cli,HN容器下会自动生成指定页面的骨骼屏样式。
通常需要在该值为true的时候,阻止Mounted与created方法的执行。当然这一切取决于你的业务处理方式。
如果你懂得Puppeteer相关知识,很容易能够理解它的原理。
isAndroid() 判断当前系统为Android boolean
isDmallApp() 判断当前环境为多点App boolean
isDmallMP() 判断当前环境为多点系小程序 boolean
isMetroApp() 判断当前环境为麦德龙App boolean
isHTMLNative() 判断当前多点App/OSApp为HN容器 boolean
isMobileDevice() 判断当前为移动端环境 boolean
isQQwebview() 判断当前为QQ浏览器 boolean
isSuperApp() 判断当前为OS APP boolean
isPopApp() 判断当前为地推App boolean
isUnionPay() 判断当前为银联云闪付App boolean
isAliApp() 判断当前为支付宝环境 boolean
isAliPayMiniProgram() 判断当前为支付宝小程序环境 boolean
isAliPayBrowser() 判断当前为支付宝浏览器/支付宝生活号环境 boolean
isCmbApp() 判断当前为招行App boolean
isWxAgent() 判断当前为微信环境 boolean
isMiniProgram() 判断当前为微信小程序环境 boolean 与isWxAgent为true同时成立
isLizhiFM() 是否荔枝FM APP boolean
isAndroidQ() 是否AndroidQ(Android 10)系统 boolean 或许你需要在AndroidQ系统下作些兼容处理——它与其他版本有许多不一样的兼容性问题。
getTenantId() 获取当前客户端内的租户Id string 仅多点小程序、App环境有值,其他场景下返回空字符串。
getIosVersion() 返回iOS系统版本号 string
getAndroidVersion() 返回Android系统版本号 string
appVersion() 返回多点App版本号 string
isDmallTenantApp() 是否商家App环境 boolean
isDmallTenantMp() 是否商家小程序环境 boolean
isTouTiaoMp() 是否抖音小程序环境 boolean