Sep 14, 2010 09:42 GMT  ·  By

Apple is instructing developers to properly indicate the required device capabilities in a note posted to the company’s iOS Dev Center.

Softpedia reported on several occasions that some developers forgot to specify the required iPhone / iPod touch models for their app, likely resulting in frustration for some users who may have ended up downloading an application that wasn’t supported on their device.

Downloading a free unsupported app is annoying enough. To download an unsupported paid application makes matters even worse for iOS customers.

Apple is not at its first attempt to whip devs into shape, urging them to carefully add a list of requirements to the UIRequiredDeviceCapabilities key in their app’s Info.plist file.

“If your app requires certain hardware features to run properly on a user's device, you need to add a list of those requirements to the UIRequiredDeviceCapabilities key in your Info.plist file,” Apple notes in the latest update posted to the News and Announcements section of the iOS Dev Center.

“However, you should only add keys for features you must have. Setting a key to false is not the same as leaving out the key,” Apple explains.

The Mac maker elaborates, saying: “When you set a key to false, you are instructing your app to run only if the device does not have the requirements. Ensuring that you have properly set your UIRequiredDeviceCapabilities key is important so that users don't install your app on a device that lacks the necessary hardware.”

Apple directs iOS coders to a knowledge base article on the iOS Reference Library web site, where information about properly indicating specific hardware requirements in the Info.plist file is dished out.

There, the Cupertino, California giant outlines that “UIRequiredDeviceCapabilities is a property list key that indicates the specific hardware features your application requires in order to run on a device.”

A complete list of these keys is located in the the UIRequiredDeviceCapabilities section of the Information Property List Key Reference, Apple reveals.

“You should only include a key if you absolutely need to limit your application's target devices,” the company stresses.

Since setting a key to false is not the same as leaving out the key. each key effectively has three states, according to the makers of the iPhone.

As such, setting the key to “true”means that devices must have the associated feature in order to run the specified application.

Setting it to “false” will tell iOS that the device must not have the associated feature in order to run the application.

Finally, a “non-existent” key means that devices may or may not have the associated feature in order to run the application. As Apple puts it, "in other words, you don't care either way."