How to adapt to Lumia phones' hardware features

This article provides guidance and best practices for adapting your apps for the hardware features of Nokia Lumia phones running Windows Phone 8.x, especially focusing on the several hardware sensors that are sometimes not available on low end models. Besides providing techniques on how to deal with the missing features and varying hardware characteristics, to make sure that your apps will run smoothly across all the devices of the Windows Phone 8.x portfolio, some UX aspects are also discussed.

Though focus is on Lumia Windows Phone 8.x device portfolio, a few references are made to Lumia Windows Phone 7 devices as well.


The Lumia 52x/63x series do not have all of the hardware features found on most Lumia Windows Phone 8.x devices, including: front camera, flash for main/back camera, gyroscope, magnetometer (compass), and NFC. As a result, there are some apps which need to replace or drop functionality, and others which cannot function at all.

When a particular sensor is essential to the operation of the application, you can opt-out (prevent installation of the app on the device) by specifying the sensor's hardware ID as a requirement in the app's manifest file. If the app can still function without the sensor, then you can make run-time checks to disable (hide) the functionality on less capable devices, or even better, provide some alternative functionality.

Note: Do not disqualify your app from devices with lack of certain hardware feature unless it is truly essential to the operation of the app; this would considerably limit the distribution of your app for no real reason. Rather consider replacing or disabling functionality from your app on such devices. However, if your app truly requires a feature to function properly, you should prevent your app from being available on the Windows Phone store for the devices lacking it.

Difference on Lumia Windows Phone 8 hardware capabilities

HW feature HW requirement 520 / 521 / 525 620 / 720 / 625 810 / 820/ 822 920 / 920T / 925 / 928 / 1020 / 1320 630 / 635 930 / 1520
Accelerometer   Yes Yes Yes Yes Yes Yes
Flash for the Main/Back Camera   No Yes Yes Yes No Yes
Front Camera ID_REQ_FRONT_CAMERA No Yes Yes Yes No Yes
GPS   Yes Yes Yes Yes Yes Yes
Gyroscope ID_REQ_GYROSCOPE No No Yes Yes No Yes
Main/Back Camera   Yes Yes Yes Yes Yes Yes
Magnetometer (Compass) ID_REQ_MAGNETOMETER No Yes Yes Yes No Yes
NFC ID_REQ_NFC No Yes Yes Yes No Yes
SD Card slot   Yes Yes Yes No Yes No
SensorCore SDK   No No No No Yes Yes

Though most apps will run just fine on Nokia Lumia 52x/63x, here are some examples of typical use cases that would be challenging or impossible:

  • Video telephony (without the front camera).
  • Mirror application (without the front camera).
  • Augmented reality application where the app needs to know the phone direction (North, South, East, West).
  • Writing or reading content to/from an NFC tag.
  • Unlocking a game level using an NFC tag.

Subtopics in this section:

Last updated 27 June 2014

Back to top