`

PhoneGap API帮助文档翻译—Accelerometer (加速度计)

阅读更多

采集设备在x、y、z方向上的动作。

方法:
  • accelerometer.getCurrentAcceleration
  • accelerometer.watchAcceleration
  • accelerometer.clearWatch
参数:
  • accelerometerSuccess
  • accelerometerError
  • accelerometerOptions
对象(只读):
  • Acceleration

accelerometer.getCurrentAcceleration:返回当前沿x、y和z方向的加速度。

navigator.accelerometer.getCurrentAcceleration(accelerometerSuccess, accelerometerError);
 说明:
加速计是检测设备在当前方向上所做相对运动变化(增、减量)的运动传感器。加速计可以检测沿X、Y和Z轴的三维运动。
加速度数据通过accelerometerSuccess回调函数返回。
支持的平台:
  • Android
  • BlackBerry WebWorks (OS 5.0或更高版本)
  • iPhone
完整的范例:
<!DOCTYPE html>
<html>
<head>
<title>Acceleration Example</title>

<script type="text/javascript" charset="utf-8" src="phonegap.js"></script>
<script type="text/javascript" charset="utf-8">

	// 等待加载PhoneGap   
	document.addEventListener("deviceready", onDeviceReady, false); 

	// PhoneGap加载完毕
	function onDeviceReady() {
		navigator.accelerometer.getCurrentAcceleration(onSuccess, onError);
	}

	// onSuccess: 返回当前加速度数据的快照
	function onSuccess(acceleration) {
		alert('Acceleration X: ' + acceleration.x + '\n' +
			'Acceleration Y: ' + acceleration.y + '\n' +
			'Acceleration Z: ' + acceleration.z + '\n' +
			'Timestamp: '      + acceleration.timestamp + '\n');
	}

	// onError: 返回加速度数据失败
	function onError() {
		alert('onError!');
	}
	
</script>

</head>
<body>
	<h1>Example</h1>
	<p>getCurrentAcceleration</p>
</body>
</html>
 iPhone的特异情况:
  • iPhone没有获取在任何给定点当前加速度数据的概念。
  • 你必须通过给定时间间隔查看加速度并获得数据。
  • 因此,getCurrentAcceleration函数会返回从phoneGap watchAccelerometer调用开始后的最近一个返回值.

accelerometer.watchAcceleration:在固定的时间间隔获取沿x、y和z轴的加速度。

var watchID = navigator.accelerometer.watchAcceleration(accelerometerSuccess,
							accelerometerError,
							[accelerometerOptions]);
 说明:
加速计是检测设备在当前方向上所做相对运动变化(增、减量)的动作传感器。加速计可以检测沿X、Y和Z轴的三维运动。
accelerometer.watchAcceleration 每隔固定时间就获取一次设备的当前加速度。每次取得加速度后,accelerometerSuccess回调函数会被执行。通过 acceleratorOptions对象的frequency参数可以设定以毫秒为单位的时间间隔。
返回的watch id是加速度计监视周期的引用,可以通过accelerometer.clearWatch调用该watch ID以停止对加速度计的监视。
支持的平台:
  • Android
  • BlackBerry WebWorks (OS 5.0或更高版本)
  • iPhone
完整的范例:
<!DOCTYPE html>
<html>
<head>
<title>Acceleration Example</title>
	
<script type="text/javascript" charset="utf-8" src="phonegap.js"></script>
<script type="text/javascript" charset="utf-8">

	// watch id 是当前“watchAcceleration”的引用
	var watchID = null;
	
	// 等待加载PhoneGap
	document.addEventListener("deviceready", onDeviceReady, false);
	
	// PhoneGap加载完毕
	function onDeviceReady() {
		startWatch();
	}
	
	// 开始监视加速度
	function startWatch() {
	
	// 每隔3秒钟更新一次加速度数据
	var options = { frequency: 3000 };
	
	watchID = navigator.accelerometer.watchAcceleration(onSuccess, onError, options);
	}
	
	// 停止监视加速度
	function stopWatch() {
		if (watchID) {
			navigator.accelerometer.clearWatch(watchID);
			watchID = null;
		}
	}
	
	// onSuccess: 获取当前加速度数据的快照
	function onSuccess(acceleration) {
		var element = document.getElementById('accelerometer');
		element.innerHTML = 'Acceleration X: ' + acceleration.x + '<br />' +
							'Acceleration Y: ' + acceleration.y + '<br />' +
							'Acceleration Z: ' + acceleration.z + '<br />' +
							'Timestamp: '      + acceleration.timestamp + '<br />';
	}
	
	// onError: 获取加速度失败
	function onError() {
		alert('onError!');
	}
	
</script>

</head>
<body>
	<div id="accelerometer">Waiting for accelerometer...</div>
</body>
</html>
 iPhone的特异情况:

 

  • 在请求的时间间隔,PhoneGap将调用success回调指向的函数,并传递加速度计数据。
  • 不过,PhoneGap将对设备的请求间隔时间限制为最小40ms,最大1000ms。
  • 例如,如果你设定每隔3秒(3000毫秒)请求一次,PhoneGap仍然每隔1秒请求一次设备,但是每隔3秒才调用一次success回调函数。

accelerometer.clearWatch:停止watch ID参数指向的加速度监视。

 

navigator.accelerometer.clearWatch(watchID);
 watchID:由accelerometer.watchAcceleration返回的引用标识ID。

 

支持的平台:
  • Android
  • BlackBerry WebWorks (OS 5.0或更高版本)
  • iPhone

完整的范例:

<!DOCTYPE html>
<html>
<head>
<title>Acceleration Example</title>

<script type="text/javascript" charset="utf-8" src="phonegap.js"></script>
<script type="text/javascript" charset="utf-8">

	// watch id 是当前“watchAcceleration”的引用
	var watchID = null;
	
	// 等待加载PhoneGap
	document.addEventListener("deviceready", onDeviceReady, false);
	
	// PhoneGap加载完毕
	function onDeviceReady() {
		startWatch();
	}
	
	// 开始监视加速度
	function startWatch() {
	
		// 每隔3秒钟更新一次加速度数据
		var options = { frequency: 3000 };
		watchID = navigator.accelerometer.watchAcceleration(onSuccess, onError, options);
	}
	
	// 停止监视加速度
	function stopWatch() {
		if (watchID) {
			navigator.accelerometer.clearWatch(watchID);
			watchID = null;
		}
	}
	
	// onSuccess: 获取当前加速度数据的快照
	function onSuccess(acceleration) {
		var element = document.getElementById('accelerometer');
		element.innerHTML = 'Acceleration X: ' + acceleration.x + '<br />' +
							'Acceleration Y: ' + acceleration.y + '<br />' +
							'Acceleration Z: ' + acceleration.z + '<br />' +
							'Timestamp: '      + acceleration.timestamp + '<br />';
	}
	
	// onError: 获取加速度失败
	function onError() {
		alert('onError!');
	}
	
</script>
</head>
<body>
	<div id="accelerometer">Waiting for accelerometer...</div>
	<button onclick="stopWatch();">Stop Watching</button>
</body>
</html>
 Acceleration:包含特定时间点采集到的加速计数据。

 

属性:
  • x:在X轴的运动量,[0, 1]范围(数字类型)
  • y:在Y轴的运动量,[0, 1]范围(数字类型)
  • z:在Z轴的运动量,[0, 1]范围(数字类型)
  • timestamp:以毫秒为单位的创建时间戳。(DOMTimeStamp类型)
说明:
这个对象是由phoneGap创建和填充,并由Acce这个对象是由PhoneGap创建和填充,并由Accelerometer的方法返回。
支持的平台:
  • Android
  • BlackBerry WebWorks (OS 5.0或更高版本)
  • iPhone

完整的范例:

<!DOCTYPE html>
<html>
<head>
<title>Acceleration Example</title>
	
<script type="text/javascript" charset="utf-8" src="phonegap.js"></script>
<script type="text/javascript" charset="utf-8">
	
	// 等待加载PhoneGap
	document.addEventListener("deviceready", onDeviceReady, false);
	
	// PhoneGap加载完毕
	function onDeviceReady() {
		navigator.accelerometer.getCurrentAcceleration(onSuccess, onError);
	}
	
	// onSuccess: 获得加速度数据的快照
	function onSuccess(acceleration) {
		alert('Acceleration X: ' + acceleration.x + '\n' +
		'Acceleration Y: ' + acceleration.y + '\n' +
		'Acceleration Z: ' + acceleration.z + '\n' +
		'Timestamp: '      + acceleration.timestamp + '\n');
	}
	
	// onError: 获取加速度失败
	function onError() {
		alert('onError!');
	}
	
</script>

</head>
<body>
	<h1>Example</h1>
	<p>getCurrentAcceleration</p>
</body>
</html>
accelerometerSuccess:提供加速度信息的onSuccess回调函数.

 

参数:
  • acceleration: 在某一时刻的加速度(Acacceleration:在某一时刻的加速度。(Acceleration对象类型)

accelerometerOptions:定制检索加速度计的可选参数

选项:
  • frequency:多少毫秒获取一次Acceleration。(数字类型)(默认值:10000)
分享到:
评论
发表评论

文章已被作者锁定,不允许评论。

相关推荐

    PhoneGap,API帮助文档翻译整理1-Accelerometer(加速度计)

    ### PhoneGap中的Accelerometer(加速度计)API详解 #### 一、简介 加速度计是一种常见的硬件传感器,被广泛应用于智能手机和平板电脑等移动设备上。它主要用于测量设备在三维空间中的线性加速度,通常包括三个轴...

    PhoneGap,API帮助文档.zip

    1. **加速度计(Accelerometer)**:加速度计API允许应用程序获取设备的运动数据,包括X、Y、Z轴上的加速度。这在游戏开发或运动监测应用中非常有用,例如检测手机的倾斜或晃动。 2. **相机(Camera)**:通过相机...

    PhoneGap中文API帮助文档

    网上的phonegap中文帮助文档尚少,翻译也不太好,在此收集了一些翻译优秀的文章,并制作成chm的帮助文档,以帮助各位学习,此文档包含了phonegap的主要使用功能,并提供了完整示例

    PhoneGap,API帮助文档翻译整理4-Compass(指南针)

    标题:PhoneGap,API帮助文档翻译整理4-Compass(指南针) 描述:本文档将深入探讨PhoneGap中Compass API的功能与应用,包括如何获取设备的指南针方向、监听指南针变化以及如何处理相关事件。 ### 一、Compass API...

    PhoneGap,API帮助文档翻译整理6-Contacts(通讯录)

    ### PhoneGap Contacts API详解 #### 一、简介 在移动应用开发中,有时我们需要访问用户的通讯录以便于实现社交功能或其他交互式应用需求。PhoneGap(现称Cordova)为开发者提供了一套丰富的API,使得跨平台应用...

    phonegap api中文手册

    **加速度计**是PhoneGap API中的一个重要模块,用于获取设备在X、Y、Z三个方向上的物理加速度。它主要用于监测设备的物理运动,比如摇晃、倾斜等动作。 - **方法** - `accelerometer.getCurrentAcceleration()`: ...

    PhoneGap,API帮助文档翻译整理10-Media_(媒体)

    在本篇文档中,我们关注的是 PhoneGap 的 Media API,它提供了对移动设备媒体(如音频)的访问和控制能力。 Media API 提供了对音频文件的操作,包括播放、暂停、停止以及获取当前播放位置等功能。以下是对 Media ...

    PhoneGap,API帮助文档翻译整理7-Events_(消息)

    PhoneGap API 提供了一系列的事件,这些事件可以帮助开发者响应移动设备上的特定操作,从而实现更丰富的用户体验。本文将详细介绍 PhoneGap 中的事件类型及其使用方法。 1. **backbutton**:当用户在 Android 设备...

    PhoneGap,API帮助文档翻译整理2-Camera(相机)

    它通过提供一系列API来访问设备的功能,如摄像头、GPS、加速度计等,使得开发者能够创建具有原生功能的应用而无需掌握多种编程语言。 Camera API是PhoneGap提供的一个用于访问设备摄像头的重要功能。它允许开发者...

    Phonegap API (中文版)

    最新的Phonegap api 中文翻译版。让你快速入门。

    PhoneGap,API帮助文档翻译整理5-Device(设备)

    知识点:PhoneGap设备API及其应用 一、PhoneGap设备API概览 PhoneGap是一个开源框架,允许开发者使用HTML、CSS和JavaScript开发跨平台移动应用程序。设备API是PhoneGap提供的核心功能之一,它允许开发者访问设备的...

    PhoneGap的API组件及使用方法

    10. **加速计** (Accelerometer): `navigator.accelerometer`允许获取设备的加速度数据。 11. ** Compass **(指南针): `navigator.compass`用于获取设备的方向信息。 12. **振动** (Vibration): 使用`navigator....

    PhoneGap,API帮助文档翻译整理6-Contacts(通讯录).pdf

    在本文中,我们将围绕PhoneGap框架的API文档进行探讨,特别是在处理移动设备上的通讯录(Contacts)数据时所使用的一系列方法。根据提供的文件信息,我们将会详细解释如何使用PhoneGap API来创建和查找通讯录中的...

    PhoneGap,API帮助文档翻译整理8-File_(文件)

    在本篇文档中,我们将重点关注与“文件”相关的 API,包括 `File`、`DirectoryEntry`、`FileReader` 等。 **File API** 是一组用于读取、写入和管理设备文件系统层级结构的接口。这些接口遵循 W3C 的《文件系统 API...

    PhoneGap,API帮助文档翻译整理9-Geolocation_(定位)

    这个 API 允许应用获取设备的地理坐标,如经度、纬度、海拔、速度等信息。 `geolocation.getCurrentPosition` 是 Geolocation API 的关键方法,用于获取设备的当前位置。这个方法是异步的,意味着它不会立即返回...

    PhoneGap,API帮助文档翻译整理3-Capture(捕捉)

    ### PhoneGap Capture API详解 #### 一、简介 **PhoneGap**是一款开源框架,允许开发者使用HTML、CSS和JavaScript等Web技术开发跨平台移动应用程序。本文档主要介绍**PhoneGap**中的**Capture API**,该API提供了...

    PhoneGap - API 中文说明

    Accelerometer 加速度计 Camera 相机 Capture 捕捉 Compass 指南针 Contacts 联系人 Device 设备 Events 活动 File 文件 Geolocation 地理位置 Media 媒体 Network 网络 Notification 通知 Storage 存储

    PhoneGap - API 中文说明.rar )

    Accelerometer 加速度计 Camera 相机 Capture 捕捉 Compass 指南针 Contacts 联系人 Device 设备 Events 活动 File 文件 Geolocation 地理位置 Media 媒体 Network 网络 Notification 通知 Storage 存储

    Phonegap API中文版

    PhoneGap API是这个框架的核心,提供了与设备硬件功能交互的能力,如摄像头、加速度计、GPS等。本资源是PhoneGap API的中文版,对于中国开发者来说,无疑是一个宝贵的参考资料。 在使用PhoneGap API进行开发时,有...

Global site tag (gtag.js) - Google Analytics