swan.getSystemInfo

基础库 1.10.8 版本开始支持。

解释:获取系统信息
Web 态说明:由于浏览器的限制,在 Web 态下部分系统信息无法获取,详见下方 success 返回参数说明。

方法参数

Object object

object 参数说明

属性名类型必填默认值说明

success

Function

接口调用成功的回调

fail

Function

接口调用失败的回调函数

complete

Function

接口调用结束的回调函数(调用成功、失败都会执行)

success 返回参数说明

参数参数类型说明最低版本Web 态说明

brand

String

手机品牌

-

model

String

手机型号

-

pixelRatio

Number

设备像素比

-

screenWidth

Number

屏幕宽度

-

screenHeight

Number

屏幕高度

-

windowWidth

Number

可使用窗口宽度

-

windowHeight

Number

可使用窗口高度

-

statusBarHeight

Number

状态栏的高度

-

navigationBarHeight

Number

导航栏的高度

3.0.17

-

language

String

宿主 App 设置的语言

-

version

String

宿主 App 版本号

Web 态无宿主概念,返回空字符串

system

String

操作系统版本

-

platform

String

客户端平台,如:ios

Web 态下该字段为 ‘web’

fontSizeSetting

Number

用户字体大小设置,表示当前字体大小的等级,如 2

Web 态下该字段为 2

SDKVersion

String

客户端基础库版本

Web 态无基础库版本管理,仅返回模拟值 999.999.999

host

String

宿主平台,详见宿主平台枚举值列表

3.30.2

Web 态的 host 为 ‘web’

cacheLocation

Object

上一次缓存的位置信息

安卓端最低基础库版本 3.40.4;ios 最低支持版本 3.70.2

暂不支持

swanNativeVersion

String

宿主平台版本号

最低支持版本 1.13.18

Web 态无宿主概念,仅返回模拟值

devicePixelRatio

Number

屏幕密度

安卓最低支持基础库版本 3.0.39; ios 最低支持版本 3.0.39

-

albumAuthorized

Boolean

允许宿主使用相册的开关(仅 iOS 有效)

ios 最低支持版本 3.110.3; 开发者工具暂不支持

暂不支持

notificationAuthorized

Boolean

允许宿主通知的开关

安卓最低支持基础库版本 3.110.3; ios 最低支持版本 3.110.3; 开发者工具暂不支持

暂不支持

notificationAlertAuthorized

Boolean

允许宿主通知带有提醒的开关(仅 iOS 有效)

ios 最低支持版本 3.110.3; 开发者工具暂不支持

暂不支持

notificationBadgeAuthorized

Boolean

允许宿主通知带有标记的开关(仅 iOS 有效)

ios 最低支持版本 3.110.3; 开发者工具暂不支持

暂不支持

notificationSoundAuthorized

Boolean

允许宿主通知带有声音的开关(仅 iOS 有效)

ios 最低支持版本 3.110.3; 开发者工具暂不支持

暂不支持

cameraAuthorized

Boolean

允许宿主使用摄像头的开关

安卓最低支持基础库版本 3.110.3; ios 最低支持版本 3.110.3; 开发者工具暂不支持

暂不支持

locationAuthorized

Boolean

允许宿主使用定位的开关

安卓最低支持基础库版本 3.110.3; ios 最低支持版本 3.110.3; 开发者工具暂不支持

暂不支持

microphoneAuthorized

Boolean

允许宿主使用麦克风的开关

安卓最低支持基础库版本 3.110.3; ios 最低支持版本 3.110.3; 开发者工具暂不支持

暂不支持

locationEnabled

Boolean

地理位置的系统开关

安卓最低支持基础库版本 3.110.3; ios 最低支持版本 3.110.3; 开发者工具暂不支持

暂不支持

wifiEnabled

Boolean

Wi-Fi 的系统开关

安卓最低支持基础库版本 3.110.3; ios 最低支持版本 3.110.3; 开发者工具暂不支持

暂不支持

safeArea

Object

在竖屏正方向下的安全区域

安卓最低支持基础库版本 3.110.3; ios 最低支持版本 3.110.3; 开发者工具暂不支持

暂不支持

示例

在开发者工具中打开

在开发者工具中打开

在 WEB IDE 中打开

扫码体验

代码示例

百度智能小程序

请使用百度APP扫码

图片示例

iOS 端预览

swan.getSystemInfo - 图2

安卓端预览

swan.getSystemInfo - 图3

代码示例 1:属性全集

  • SWAN
  • JS
  1. <view class="wrap">
  2. <view class="card-area">
  3. <view class="list-area border-bottom" s-for="item in infoList">
  4. <text class="list-item-key-4">{{item.label}}:</text>
  5. <text class="list-item-value">{{item.value}}</text>
  6. </view>
  7. </view>
  8. <view class="swan-security-padding-bottom flex-button">
  9. <button bindtap="getSystemInfo" type="primary" hover-stop-propagation="true">点击获取系统信息</button>
  10. </view>
  11. </view>

代码示例 2:开发者一般在模拟顶部导航栏时用到 statusBarHeight 属性

在开发者工具中打开

在开发者工具中打开

在 WEB IDE 中打开

  • SWAN
  • JS
  1. <!-- 代码链接中为自定义组件写法,可进行多页面复用 -->
  2. <view class="nav-box">
  3. <view class="top-title" style="margin-top:{{statusBarHeight}}px">
  4. <view class="back-icon-wrap" bindtap="back">
  5. <image class="back-icon" src="/images/back.png"></image>
  6. </view>
  7. <view class="page-title">
  8. <view class="page-title-china">{{chinaName}}</view>
  9. <view class="page-title-english">{{engName}}</view>
  10. </view>
  11. </view>
  12. </view>
  13. <!-- 占位元素,防止接下来的页面内容被导航栏遮挡 -->
  14. <view style="padding-top:{{statusBarHeight + 0.53}}px"></view>

代码示例 3:safeArea 属性

在开发者工具中打开

在开发者工具中打开

在 WEB IDE 中打开

  • SWAN
  • JS
  1. <view class="wrap">
  2. <view class="card-area">可使用窗口高度:{{windowHeight}}</view>
  3. <view class="card-area">屏幕高度:{{screenHeight}}</view>
  4. <view class="card-area">安全区域bottom:{{safeArea}}</view>
  5. <button bind:tap="getSystemInfo" type="primary">获取数据</button>
  6. </view>

代码示例 4:适配 iphoneX 等机型

在开发者工具中打开

在开发者工具中打开

在 WEB IDE 中打开

参见百度通用 iphoneX 适配

  • SWAN
  • JS
  1. <view class="wrap">
  2. <button bindtap="getSystemInfo">
  3. 是否是iphoneX
  4. </button>
  5. <view class="card-area"> {{isIPhoneX}} </view>
  6. </view>

错误码

Android

错误码说明

201

解析失败,请检查调起协议是否合法

202

解析失败,请检查参数是否正确

402

安全性检查:访问控制校验失败