本文档部分API缺少示例代码,诚挚的邀请你参与到示例代码的编写中来,你可以在代码中发布2行自定义注释,内容自拟。 有意者可与刺鸟联系(QQ:4041990 Q群:7702175)

API简介

uexSensor对象封装了调用(监听)设备传感器的接口,需要注意的是,不同的系统,不同的设备具有的传感器不一样。比如iphone中有重力加速度和磁场,在itouch中,只有重力加速度;类似的,在不同的Android设备中,也是千差万别。Appcan对此的处理机制是:对不支持的传感器类别,可以调用接口,也可以定义回调方法,但是不会调用。

接口说明

方法说明
uexSensor.open(inType,inRate)启动扫描,不同的系统,不同的设备支持的传感器类型有差别。当不支持某一传感器时,调用方法,回调方法可以正常定义,但不会有回调方法的触发。
uexSensor.onAccelerometerChange(inX,inY,inZ)监听加速度的变化,必须open了才能进行监听。
uexSensor.onOrientationChange(inX,inY,inZ)监听方向的变化,必须open了才能进行监听。
uexSensor.onMagneticChange(inX,inY,inZ)监听磁场的变化,必须open了才能进行监听。
uexSensor.onTemperatureChange(inTemperature)监听温度的变化,必须open了才能进行监听。
uexSensor.
uexSensor.onLightChange(inLight)监听亮度的变化,必须open了才能进行监听。
uexSensor.close(inType)根据类型关闭传感器。
open(inType,inRate)
参数名称描述
inType传感器类型传感器类型inType值Accelerometer(加速度)1Orientation(方向)2Magnetic(磁场)3Temperature(温度)4Pressure(压力)5Light(光度)6
inRate传感器速率速率范围inRate值uex.cRateFastest0uex.cRateGame1uex.cRateUI2uex.cRateNormal3
onAccelerometerChange(inX,inY,inZ)
参数名称描述
inXx-轴上的加速度变化值, float类型数据
inYy-轴上的加速度变化值, float类型数据
inZz-轴上的加速度变化值, float类型数据
onOrientationChange(inX,inY,inZ)
参数名称描述
inXx-轴上的方向变化值, float类型数据
inYy-轴上的方向变化值, float类型数据
inZz-轴上的方向变化值, float类型数据
onMagneticChange(inX,inY,inZ)
参数名称描述
inXx-轴上的磁场变化值, float类型数据
inYy-轴上的磁场变化值, float类型数据
inZz-轴上的磁场变化值, float类型数据
onTemperatureChange(inTemperature)
参数名称描述
inTemperature温度的变化值, float类型数据
onLightChange(inLight)
参数名称描述
inLight亮度的变化值, float类型数据
close(inType)

参数名称描述
inType传感器类型传感器类型inType值Accelerometer(加速度)1Orientation(方向)2Magnetic(磁场)3Temperature(温度)4Pressure(压力)5Light(光度)6

// 本代码由寒暄提供,如有bug请和寒暄联系(QQ:457696322 Q群:7702175)
<!DOCTYPE html>
<html>
<head>
<title>AppCan API uexSensor</title>
<meta charset='utf-8'>
<script>
window.uexOnload = function(type){
    if(!type){
        uexWidgetOne.onError=function(opCode,errorCode,errorDesc){
            console.log(errorCode+':'+errorDesc);
        }
        uexSensor.onAccelerometerChange=function(inX,inY,inZ){
            $$('id1').innerHTML = 'X='+inX+' Y='+inY+' Z='+inZ;
        }
        uexSensor.onOrientationChange=function(inX,inY,inZ){
            $$('id2').innerHTML = 'X='+inX+' Y='+inY+' Z='+inZ;
        }
        uexSensor.onMagneticChange=function(inX,inY,inZ){
            $$('id3').innerHTML = 'X='+inX+' Y='+inY+' Z='+inZ;
        }
        uexSensor.onTemperatureChange=function(inTemperature){
            $$('id4').innerHTML = 'inTemperature='+inTemperature;
        }
        uexSensor.onPressureChange=function(inPressure){
            $$('id5').innerHTML = 'inPressure='+inPressure;
        }
        uexSensor.onLightChange=function(inLight){
            $$('id6').innerHTML = 'inLight='+inLight;
        }
    }
}
function $$(id){
    return document.getElementById(id);
}
var inType = 0;
function sensorOpen(i){
    inType = i;
    var inRate = 3;
    uexSensor.open(i,inRate);
}
function sensorClose(){
    uexSensor.close(inType);
}
</script>
</head>
<body>
    <div>
        <span>启动传感器:</span><br>
        <input type='button' value='加速度' onclick='sensorOpen(1);'>
        <span id='id1'></span><br>
        <input type='button' value='方向' onclick='sensorOpen(2);'>
        <span id='id2'></span><br>
        <input type='button' value='磁场' onclick='sensorOpen(3);'>
        <span id='id3'></span><br>
        <input type='button' value='温度' onclick='sensorOpen(4);'>
        <span id='id4'></span><br>
        <input type='button' value='压力' onclick='sensorOpen(5);'>
        <span id='id5'></span><br>
        <input type='button' value='光度' onclick='sensorOpen(6);'>
        <span id='id6'></span><br>
        <input type='button' value='关闭传感器' onclick='sensorClose();'>
    </div>
</body>
</html>