hardwareInfo
来自于:开发者立即使用
概述
hardwareInfo 模块主要用于检测硬件设备,提供了获取设备MAC地址、IP地址,获取设备性能检测信息,生成GUID编码,进行网络连通性测试(Ping测试)等功能。
- 获取设备网卡的MAC地址和IP地址,支持IPv4和IPv6。
- 获取当前设备cpu使用率,cpu核心数,cpu最大速度,cpu最小速度,app内存占用大小,我们可以根据获得的信息对自己的应用进行性能优化,调优。
- 生成唯一标识(GUID)字符串,可通过参数的指定获取的GUID字符串格式,默认为小写并且没有横线。
- 进行网络连通性测试,ping一个IP地址或者域名,可以检测目标IP或者域名是否联通,异步返回测试结果。
- 可实现Android的清除缓存、清除数据的功能
getIpMacAddrList
获取设备所有网卡的IP和MAC地址列表
getIpMacAddrList(callback(ret, err))
callback(ret, err)
ret:
- 类型:JSON对象数组,通常如果设备里只有一个网卡,那么数组里面就只有一个JSON对象
- 内部对象:
[
{
name:'', //网卡名称
macAddr:'', //mac地址
v4Addr:'', //ipv4地址
v6Addr:'' //ipv6地址
},
{
name:'', //网卡名称
macAddr:'', //mac地址
v4Addr:'', //ipv4地址
v6Addr:'' //ipv6地址
}
]
err:
- 类型:JSON对象
- 内部字段:
{
msg:'' //错误信息描述
}
示例代码
var module = api.require('hardwareInfo');
module.getIpMacAddrList(function(ret,err)
{
if(err)
alert(err);
else
alert(JSON.stringify(ret));
});
可用性
iOS系统,Android系统
可提供的1.0.0及更高版本
getPerformanceInfo
获取当前设备cpu使用率,cpu核心数,cpu最大速度,cpu最小速度,app内存占用大小
getPerformanceInfo(callback(ret, err))
callback(ret, err)
ret:
- 类型:JSON对象
- 内部字段:
{
cpu:'2.3%', //当前cpu占用率
cpuCount:8, //cpu核心数
maxCpuFreq:'1455M', //cpu最大速度
minCpuFreq:'1000M', //cpu最小速度
curAppMemory:'6M' //当前app内存占用大小
}
err:
- 类型:JSON对象
- 内部字段:
{
msg:'' //错误信息描述
}
示例代码
var module = api.require('hardwareInfo');
module.getPerformanceInfo(function(ret,err)
{
document.getElementById("divPerformance").innerHTML = "memory:" + ret.curAppMemory + " cpu:" + ret.cpu + " cores:" + ret.cpuCount +
" Max Speed:" + ret.maxCpuFreq + " " + " Min Speed:" + ret.minCpuFreq;
});
可用性
Android系统
可提供的1.0.0及更高版本
generateGuid
根据传入参数的不同获得的字符串格式响应改变,默认为小写并且没有横线。
generateGuid({params},callback(ret, err))
params
lower:
- 类型: bool类型
- 默认值:true
- 描述: 默认GUID为小写,如果传入false则为大写
line:
- 类型: bool类型
- 默认值:true
- 描述: 默认GUID中包含横线,如果传入false则无横线
callback(ret, err)
ret:
- 类型:字符串
err:
- 类型:JSON对象
- 内部字段:
{
msg:'' //错误信息描述
}
示例代码
// 创建格式为:578070463D2C4E4E97B19412896EC747 的 GUID
var module = api.require('hardwareInfo');
module.generateGuid(
{
lower:false, //设为大写
line:false //不要横线
},
function(ret,err){
if(err){
alert(err.msg);
}
else{
alert(ret);
}
}
);
// 创建格式为:578070463d2c4e4e97b19412896ec747 的 GUID
var module = api.require('hardwareInfo');
module.generateGuid(
{
lower:true, //设为小写
line:false //不要横线
},
function(ret,err){
if(err){
alert(err.msg);
}
else{
alert(ret);
}
}
);
// 创建格式为:57807046-3D2C-4E4E-97B1-9412896EC747 的 GUID
var module = api.require('hardwareInfo');
module.generateGuid(
{
lower:false, //设为大写
line:false //有横线
},
function(ret,err){
if(err){
alert(err.msg);
}
else{
alert(ret);
}
}
);
可用性
iOS系统,Android系统
可提供的1.0.0及更高版本
doPingTest
doPingTest主要是用来检测当前设备和指定的IP或者域名之间是否畅通,类似我们在windows常用的ping命令,异步回调函数可以获得ping的反馈信息。
doPingTest({params},callback(ret, err))
params
host:
- 类型: 字符串类型
- 默认值:无
- 描述: IP地址字符串。
callback(ret, err)
ret:
- 类型:JSON对象
- 内部字段:
{
result: //字符串:success成功,fail失败
info: //ping反馈的具体信息
}
err:
- 类型:JSON对象
- 内部字段:
{
msg:'' //错误信息描述
}
示例代码
var module = api.require('hardwareInfo');
module.doPingTest(
{
host:'192.168.1.158'
},
function(ret,err){
if(err){
console.log(err.msg);
}
else if(ret.info)
console.log(ret.info); //ret.info可以获取到ping反馈的具体信息
else if(ret.result == "success")
console.log("ping通");
else if(ret.result == "fail")
console.log("ping不通");
}
);
可用性
iOS系统,Android系统
可提供的1.0.0及更高版本
clearAppCache
clearAppCache可以清空当前app缓存。
clearAppCache()
示例代码
var module = api.require('hardwareInfo');
module.clearAppCache();
可用性
Android系统
可提供的1.0.0及更高版本
clearAppData
clearAppData可以清空当前app数据(app会强制退出)。
clearAppData()
示例代码
var module = api.require('hardwareInfo');
module.clearAppData();
可用性
Android系统
可提供的1.0.0及更高版本