In this article we will tell you about some Windows Phone 8 Motions API. Here’s the complete details about them:
Motion API (Application Programming Interface) can be used to create applications for phones based on Windows 8 OS. The orientation of the device and its movement can be used as an input mechanism for creating applications. The Windows 8 platform has API that pick up raw sensor’s data from the inbuilt sensors like Compass, accelerometer, Gyroscope of the device. Motion API analyzes the data picked up by the complex mathematical calculations and offers easy to use values for determining the devices motion and attitude.
Windows 8 for phones is compatible with multiple sensors, and this is the reason multiple apps can determine the orientation and motion of the device. The sensors take up the user input from the physical device and allow the development of apps on the platform. Because of this functionality we have augmented reality apps and motion controlled games. Motion API syncs up all input data collected from various sensors, to provide precise information regarding orientation and motion. For developing various apps, Windows 8 Phone helps APIs in retrieving data from the different sensors.
Windows Phone Sensors Supporting Motion API
The gravitational forces and other forces developed by the movement of the Windows phone are detected by Accelerometer. Combined motion API uses Motion Class to segregate the gravity vector from the device acceleration and hence determine the device’s attitude (pitch, yaw and roll).
The compass, often called the magnetometer, maps the angle by which the device is being rotated with respect to the magnetic pole of the Earth. Raw sensors captured by the magnetometer can be used by apps, to reveal the magnetic field around the device.
While designing and implementing a Motion API app, you should choose apps that check for the availability of sensors. The sensors are the most crucial part, which detect the input mechanism by the user through the user interface.
The gyroscope determines the rotational velocity in each axis. The values that are captured by the gyroscope are used for the determination of the orientation of the phone in space. But there is one limitation: gyroscope does not capture the angle of rotation and hence it does not provide very convincing data about the attitude as per drift. That is why Motion API is used for designing and implementing apps instead of Gyroscope API.
The Gyroscope app is also not imperative with the Windows 8 OS on your phone and hence while developing and installing apps your must gauge the availability of sensors.
But there are definitely physical limitations when the raw data picked up by the sensors of a Windows Phone 8 are synced to give location and motion of the device. For example, Accelerometer calculates the speed by considering the motion and gravitational forces. The Gyroscope sensors measure speed in the rotation, and not position of the device, subjecting it to issues related to drift; there is a series of complex calculations involved in all of these processes. On the other hand Motion Class considers the calculations of low level sensors and hence determines the linear acceleration as well as rotational acceleration with respect to gravity as well as movement of the device. Hence motion class API is more recommended for developing the apps.
Motion API uses two sensor configurations. In Normal motion, the Accelerometer and compass is used. In the Enhanced Motion Compass, Gyrometer and Accelerometer is used. Before implementing Motion API based app on Windows 8 Phone, you must check whether all of the required sensors are available on the device.
Windows Phone Store Considers the Sensors
While installing a motion API app, your device should support the sensors (Accelerometer, Gyroscope or Compass) used by the app. If Windows Phone Store does not notice any of these sensors on your device, it will immediately issue a warning. The Motion API works instantly even if only one sensor-compass sensor – is available, but better data is yielded with the Gyroscope sensor.