hardwareInfo

来自于:开发者立即使用

getIpMacAddrList getPerformanceInfo generateGuid doPingTest clearAppCache clearAppData

概述

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对象
  • 内部对象:
  1. [
  2. {
  3. name:'', //网卡名称
  4. macAddr:'', //mac地址
  5. v4Addr:'', //ipv4地址
  6. v6Addr:'' //ipv6地址
  7. },
  8. {
  9. name:'', //网卡名称
  10. macAddr:'', //mac地址
  11. v4Addr:'', //ipv4地址
  12. v6Addr:'' //ipv6地址
  13. }
  14. ]

err:

  • 类型:JSON对象
  • 内部字段:
  1. {
  2. msg:'' //错误信息描述
  3. }

示例代码

  1. var module = api.require('hardwareInfo');
  2. module.getIpMacAddrList(function(ret,err)
  3. {
  4. if(err)
  5. alert(err);
  6. else
  7. alert(JSON.stringify(ret));
  8. });

可用性

iOS系统,Android系统

可提供的1.0.0及更高版本

getPerformanceInfo

获取当前设备cpu使用率,cpu核心数,cpu最大速度,cpu最小速度,app内存占用大小

getPerformanceInfo(callback(ret, err))

callback(ret, err)

ret:

  • 类型:JSON对象
  • 内部字段:
  1. {
  2. cpu:'2.3%', //当前cpu占用率
  3. cpuCount:8, //cpu核心数
  4. maxCpuFreq:'1455M', //cpu最大速度
  5. minCpuFreq:'1000M', //cpu最小速度
  6. curAppMemory:'6M' //当前app内存占用大小
  7. }

err:

  • 类型:JSON对象
  • 内部字段:
  1. {
  2. msg:'' //错误信息描述
  3. }

示例代码

  1. var module = api.require('hardwareInfo');
  2. module.getPerformanceInfo(function(ret,err)
  3. {
  4. document.getElementById("divPerformance").innerHTML = "memory:" + ret.curAppMemory + " cpu:" + ret.cpu + " cores:" + ret.cpuCount +
  5. " Max Speed:" + ret.maxCpuFreq + " " + " Min Speed:" + ret.minCpuFreq;
  6. });

可用性

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对象
  • 内部字段:
  1. {
  2. msg:'' //错误信息描述
  3. }

示例代码

  1. // 创建格式为:578070463D2C4E4E97B19412896EC747 的 GUID
  2. var module = api.require('hardwareInfo');
  3. module.generateGuid(
  4. {
  5. lower:false, //设为大写
  6. line:false //不要横线
  7. },
  8. function(ret,err){
  9. if(err){
  10. alert(err.msg);
  11. }
  12. else{
  13. alert(ret);
  14. }
  15. }
  16. );
  17. // 创建格式为:578070463d2c4e4e97b19412896ec747 的 GUID
  18. var module = api.require('hardwareInfo');
  19. module.generateGuid(
  20. {
  21. lower:true, //设为小写
  22. line:false //不要横线
  23. },
  24. function(ret,err){
  25. if(err){
  26. alert(err.msg);
  27. }
  28. else{
  29. alert(ret);
  30. }
  31. }
  32. );
  33. // 创建格式为:57807046-3D2C-4E4E-97B1-9412896EC747 的 GUID
  34. var module = api.require('hardwareInfo');
  35. module.generateGuid(
  36. {
  37. lower:false, //设为大写
  38. line:false //有横线
  39. },
  40. function(ret,err){
  41. if(err){
  42. alert(err.msg);
  43. }
  44. else{
  45. alert(ret);
  46. }
  47. }
  48. );

可用性

iOS系统,Android系统

可提供的1.0.0及更高版本

doPingTest

doPingTest主要是用来检测当前设备和指定的IP或者域名之间是否畅通,类似我们在windows常用的ping命令,异步回调函数可以获得ping的反馈信息。

doPingTest({params},callback(ret, err))

params

host:

  • 类型: 字符串类型
  • 默认值:无
  • 描述: IP地址字符串。

callback(ret, err)

ret:

  • 类型:JSON对象
  • 内部字段:
  1. {
  2. result: //字符串:success成功,fail失败
  3. info //ping反馈的具体信息
  4. }

err:

  • 类型:JSON对象
  • 内部字段:
  1. {
  2. msg:'' //错误信息描述
  3. }

示例代码

  1. var module = api.require('hardwareInfo');
  2. module.doPingTest(
  3. {
  4. host:'192.168.1.158'
  5. },
  6. function(ret,err){
  7. if(err){
  8. console.log(err.msg);
  9. }
  10. else if(ret.info)
  11. console.log(ret.info); //ret.info可以获取到ping反馈的具体信息
  12. else if(ret.result == "success")
  13. console.log("ping通");
  14. else if(ret.result == "fail")
  15. console.log("ping不通");
  16. }
  17. );

可用性

iOS系统,Android系统

可提供的1.0.0及更高版本

clearAppCache

clearAppCache可以清空当前app缓存。

clearAppCache()

示例代码

  1. var module = api.require('hardwareInfo');
  2. module.clearAppCache();

可用性

Android系统

可提供的1.0.0及更高版本

clearAppData

clearAppData可以清空当前app数据(app会强制退出)。

clearAppData()

示例代码

  1. var module = api.require('hardwareInfo');
  2. module.clearAppData();

可用性

Android系统

可提供的1.0.0及更高版本