accelerometer

Accelerometer模块管理设备加速度传感器,用于获取设备加速度信息,包括x(屏幕水平方向)、y(垂直屏幕水平方向)、z(垂直屏幕平面方向)三个方向的加速度信息。通过plus.accelerometer获取设备加速度传感器管理对象。

方法:

对象:

回调方法:

权限:

permissions


"Accelerometer": {
	"description": "访问加速度感应器设备"
}
			

getCurrentAcceleration

获取当前设备的加速度信息


void plus.accelerometer.getCurrentAcceleration( successCB, errorCB );
				

说明:

加速度是设备在当前方向上所做相对运动变化(增、减量)的运动传感器。加速度信息包括x、y、z三个方向的信息。 加速度信息可通过successCB回调函数返回。加速度信息获取失败则调用回调函数errorCB。

参数:

返回值:

void : 无

示例:


<!DOCTYPE html>
<html>
	<head>
	<meta charset="utf-8"/>
	<meta name="viewport" content="initial-scale=1.0, maximum-scale=1.0, user-scalable=no"/>
	<title>Accelerometer Example</title>
	<script type="text/javascript">
// 监听plusready事件  
document.addEventListener( "plusready", function(){
	// 扩展API加载完毕,现在可以正常调用扩展API
	plus.accelerometer.getCurrentAcceleration( function( a ) {
		alert( "Acceleration\nx:" + a.xAxis + "\ny:" + a.yAxis + "\nz:" + a.zAxis );
	} );
}, false );
	</script>
	</head>
	<body>
	</body>
</html>
				

watchAcceleration

监听设备加速度变化信息


Number plus.accelerometer.watchAcceleration( successCB, errorCB, option );
				

说明:

加速度是设备在当前方向上所做相对运动变化(增、减量)的运动传感器。加速度信息包括x、y、z三个方向的信息。 watchAcceleration每隔固定时间就获取一次设备的加速度信息,通过successCB回调函数返回。可通过option的frequency参数设定获取设备加速度信息的时间间隔。 加速度信息获取失败则调用回调函数errorCB。

参数:

返回值:

Number : 用于标识加速度信息监听器,可通过clearWatch方法取消监听。

示例:


<!DOCTYPE html>
<html>
	<head>
	<meta charset="utf-8"/>
	<meta name="viewport" content="initial-scale=1.0, maximum-scale=1.0, user-scalable=no"/>
	<title>Accelerometer Example</title>
	<script type="text/javascript">
// 监听plusready事件  
document.addEventListener( "plusready", function(){
	// 扩展API加载完毕,现在可以正常调用扩展API
	var acc = document.getElementById("acc");
	plus.accelerometer.watchAcceleration( function ( a ) {
		acc.innerText =  "x:" + a.xAxis + "\ny:" + a.yAxis + "\nz:" + a.zAxis;
	}, function ( e ) {
		alert( "Acceleration error: " + e.message ); 
	} ); 
}, false );
	</script>
	</head>
	<body>
		Acceleration:<br/>
		<p id="acc"></p>
	</body>
</html>
				

clearWatch

关闭监听设备加速度信息


void plus.accelerometer.clearWatch( watchId );
				

说明:

关闭监听设备加速度信息,应用关闭调用watchAcceleration方法的开启的监听操作。

参数:

返回值:

void : 无

示例:


<!DOCTYPE html>
<html>
	<head>
	<meta charset="utf-8"/>
	<meta name="viewport" content="initial-scale=1.0, maximum-scale=1.0, user-scalable=no"/>
	<title>Accelerometer Example</title>
	<script type="text/javascript">
var wid = null;
// 监听plusready事件  
document.addEventListener( "plusready", function(){
	// 扩展API加载完毕,现在可以正常调用扩展API
	var acc = document.getElementById("acc");
	wid = plus.accelerometer.watchAcceleration( function ( a ) {
		acc.innerText =  "x:" + a.xAxis + "\ny:" + a.yAxis + "\nz:" + a.zAxis;
	}, function ( e ) {
		alert( "Acceleration error: " + e.message ); 
	} ); 
}, false );
function cancel() {
	plus.accelerometer.clearWatch( wid );
	wid = null;
}
	</script>
	</head>
	<body>
		Acceleration:<br/>
		<p id="acc"></p><br/>
		<button onclick="cancel()">Cancel</button>
	</body>
</html>
				

Acceleration

设备加速度信息对象


interface Acceleration {
	readonly attribute Number xAxis;
	readonly attribute Number yAxis;
	readonly attribute Number zAxis;  
}
				

说明:

JSON对象,保存获取设备的加速度信息,包括x、y、z三个方向的加速度信息。

属性:

示例:


<!DOCTYPE html>
<html>
	<head>
	<meta charset="utf-8"/>
	<meta name="viewport" content="initial-scale=1.0, maximum-scale=1.0, user-scalable=no"/>
	<title>Accelerometer Example</title>
	<script type="text/javascript">
// 监听plusready事件  
document.addEventListener( "plusready", function(){
	// 扩展API加载完毕,现在可以正常调用扩展API
	var acc = document.getElementById("acc");
	plus.accelerometer.watchAcceleration( function ( a ) {
		acc.innerText =  "x:" + a.xAxis + "\ny:" + a.yAxis + "\nz:" + a.zAxis;
	}, function ( e ) {
		alert( "Acceleration error: " + e.message ); 
	} ); 
}, false );
	</script>
	</head>
	<body>
		Acceleration:<br/>
		<p id="acc"></p>
	</body>
</html>
				

AccelerometerOption

监听设备加速度感应器参数


interface Acceleration {
	readonly attribute DOMString frequency;
}
				

说明:

JSON对象,用于设置获取设备加速度信息的参数。

属性:

示例:


<!DOCTYPE html>
<html>
	<head>
	<meta charset="utf-8"/>
	<meta name="viewport" content="initial-scale=1.0, maximum-scale=1.0, user-scalable=no"/>
	<title>Accelerometer Example</title>
	<script type="text/javascript">
// 监听plusready事件  
document.addEventListener( "plusready", function(){
	// 扩展API加载完毕,现在可以正常调用扩展API
	var acc = document.getElementById("acc");
	plus.accelerometer.watchAcceleration( function ( a ) {
		acc.innerText =  "x:" + a.xAxis + "\ny:" + a.yAxis + "\nz:" + a.zAxis;
	}, function ( e ) {
		alert( "Acceleration error: " + e.message ); 
	}, {frequency:1000} ); // 设置更新间隔时间为1s
}, false );
	</script>
	</head>
	<body>
		Acceleration:<br/>
		<p id="acc"></p>
	</body>
</html>
				

AccelerometerSuccessCallback

获取设备加速度信息成功的回调函数


void onSuccess( acceleration ) {
	// Get acceleration code.
}
				

参数:

返回值:

void : 无

示例:


<!DOCTYPE html>
<html>
	<head>
	<meta charset="utf-8"/>
	<meta name="viewport" content="initial-scale=1.0, maximum-scale=1.0, user-scalable=no"/>
	<title>Accelerometer Example</title>
	<script type="text/javascript">
// 监听plusready事件  
document.addEventListener( "plusready", function(){
	// 扩展API加载完毕,现在可以正常调用扩展API
	var acc = document.getElementById("acc");
	plus.accelerometer.watchAcceleration( function ( a ) {
		acc.innerText =  "x:" + a.xAxis + "\ny:" + a.yAxis + "\nz:" + a.zAxis;
	}, function ( e ) {
		alert( "Acceleration error: " + e.message ); 
	} ); 
}, false );
	</script>
	</head>
	<body>
		Acceleration:<br/>
		<p id="acc"></p>
	</body>
</html>
				

AccelerometerErrorCallback

获取设备加速度信息失败的回调函数


function void onAccelerometerError( Exception error ) {
	// Handle error
	var code = error.code; // 错误编码
	var message = error.message; // 错误描述信息
}
				

参数:

返回值:

void : 无

示例:


<!DOCTYPE html>
<html>
	<head>
	<meta charset="utf-8"/>
	<meta name="viewport" content="initial-scale=1.0, maximum-scale=1.0, user-scalable=no"/>
	<title>Accelerometer Example</title>
	<script type="text/javascript">
// 监听plusready事件  
document.addEventListener( "plusready", function(){
	// 扩展API加载完毕,现在可以正常调用扩展API
	var acc = document.getElementById("acc");
	plus.accelerometer.watchAcceleration( function ( a ) {
		acc.innerText =  "x:" + a.xAxis + "\ny:" + a.yAxis + "\nz:" + a.zAxis;
	}, function ( e ) {
		alert( "Acceleration error: " + e.message ); 
	} ); 
}, false );
	</script>
	</head>
	<body>
		Acceleration:<br/>
		<p id="acc"></p>
	</body>
</html>