The Tizen platform provides a wide range of features across a variety of hardware and software components. Among the features, there are some that can be selectively supported by the Tizen device manufacturer. To prevent problems when the user is trying to run your application on a device that does not support all the features your application is using, do one of the following:
For example, if an application wants to use location information, it can check the device capability by using the SystemInfoDeviceCapability interface (for a Web application) or the GetValue() method of the Tizen::System::SystemInfo class (for a native application). If the device supports GPS, the application uses GPS information, and if the device supports WPS only, the application uses WPS information instead of GPS.
Be careful when defining the feature list for feature-based filtering. The feature list can dramatically reduce your chances of getting the application downloaded by reducing the number of devices which can support the application.
If the config.xml file (for a Web application) or the manifest.xml file (for a native application) of the application package includes a feature list, the Tizen Store compares the capabilities of the device with the required feature conditions of the application. The store only lists the applications whose conditions match the capabilities of the device, and thus prevents unsupported applications from being installed.
Figure: Feature-based filtering
When multiple features are defined in the feature list for feature-based filtering, the Tizen Store creates the filtering condition for all using the "AND" operation. For example, if there are http://tizen.org/feature/network.nfc and http://tizen.org/feature/network.bluetooth features in the feature list of the application package, only a device that has both those features can show the application on the Tizen Store application list for downloading.
The screen size feature is the only exception to the normal feature handling process described above. When the screen size is defined in the feature list, the Tizen Store creates the filtering condition with the "OR" operation. For example, if the http://tizen.org/feature/screen.size.normal.480.800 and http://tizen.org/feature/screen.size.normal.720.1280 features are defined in your application feature list, a device that supports one or the other of those features can show the application on the Tizen Store application list.
If you do not specify a proper screen size in the config.xml file for a Web application or the manifest.xml file for a native application, your application can be rejected from the Tizen store.
The following table lists the available screen size features.
Feature key for application filtering | Description |
---|---|
http://tizen.org/feature/screen.size.normal | Specify this key, if the application supports all possible current and future resolutions on the normal screen size.
You cannot specify keys on both screen.size.* and screen.size.normal.* levels simultaneously. If you do, only the most specific resolution key is considered and the less specific resolution keys are ignored. For example, if you specify both http://tizen.org/feature/screen.size.normal and http://tizen.org/feature/screen.size.normal.320.480 keys, only the http://tizen.org/feature/screen.size.normal.320.480 key is applied. If no screen size key is declared, it is assumed that the application supports only screen.size.normal.720.1280. To avoid this, specify at least 1 screen size key. |
http://tizen.org/feature/screen.size.normal.320.480 | Specify this key, if the application supports the 320 x 480 resolution on the normal screen size.
You can specify multiple http://tizen.org/feature/screen.size.normal.* keys, if your application supports multiple screen resolutions on the normal screen size. However, you cannot specify keys on both screen.size.* and screen.size.normal.* levels simultaneously. If no screen size key is declared, it is assumed that the application supports only screen.size.normal.720.1280. To avoid this, specify at least 1 screen size key. |
http://tizen.org/feature/screen.size.normal.480.800 | Specify this key, if the application supports the 480 x 800 resolution on the normal screen size.
You can specify multiple http://tizen.org/feature/screen.size.normal.* keys, if your application supports multiple screen resolutions on the normal screen size. However, you cannot specify keys on both screen.size.* and screen.size.normal.* levels simultaneously. If no screen size key is declared, it is assumed that the application supports only screen.size.normal.720.1280. To avoid this, specify at least 1 screen size key. |
http://tizen.org/feature/screen.size.normal.540.960 | Specify this key, if the application supports the 540 x 960 resolution on the normal screen size.
You can specify multiple http://tizen.org/feature/screen.size.normal.* keys, if your application supports multiple screen resolutions on the normal screen size. However, you cannot specify keys on both screen.size.* and screen.size.normal.* levels simultaneously. If no screen size key is declared, it is assumed that the application supports only screen.size.normal.720.1280. To avoid this, specify at least 1 screen size key. |
http://tizen.org/feature/screen.size.normal.600.1024 | Specify this key, if the application supports the 600 x 1024 resolution on the normal screen size.
You can specify multiple http://tizen.org/feature/screen.size.normal.* keys, if your application supports multiple screen resolutions on the normal screen size. However, you cannot specify keys on both screen.size.* and screen.size.normal.* levels simultaneously. If no screen size key is declared, it is assumed that the application supports only screen.size.normal.720.1280. To avoid this, specify at least 1 screen size key. |
http://tizen.org/feature/screen.size.normal.720.1280 | Specify this key, if the application supports the 720 x 1280 resolution on the normal screen size. You can specify multiple http://tizen.org/feature/screen.size.normal.* keys, if your application supports multiple screen resolutions on the normal screen size. However, you cannot specify keys on both screen.size.* and screen.size.normal.* levels simultaneously. If no screen size key is declared, it is assumed that the application supports only screen.size.normal.720.1280. To avoid this, specify at least 1 screen size key. |
http://tizen.org/feature/screen.size.normal.1080.1920 | Specify this key, if the application supports the 1080 x 1920 resolution on the normal screen size.
You can specify multiple http://tizen.org/feature/screen.size.normal.* keys, if your application supports multiple screen resolutions on the normal screen size. However, you cannot specify keys on both screen.size.* and screen.size.normal.* levels simultaneously. If no screen size key is declared, it is assumed that the application supports only screen.size.normal.720.1280. To avoid this, specify at least 1 screen size key. |
http://tizen.org/feature/screen.size.all | Specify this key, if the application supports all possible current and future screen sizes and all possible current and future resolutions per screen size.
You cannot specify keys on both screen.size.* and screen.size.normal.* levels simultaneously. If you do, only the most specific resolution key is considered and the less specific resolution keys are ignored. For example, if you specify both http://tizen.org/feature/screen.size.all and http://tizen.org/feature/screen.size.normal.320.480 keys, only the http://tizen.org/feature/screen.size.normal.320.480 key is applied. If no screen size key is declared, it is assumed that the application supports only screen.size.normal.720.1280. To avoid this, specify at least 1 screen size key. |
The feature keys for application filtering have a hierarchy. For example, consider the http://tizen.org/feature/location, http://tizen.org/feature/location.gps, and http://tizen.org/feature/location.wps features:
This means that the Tizen Store considers the http://tizen.org/feature/location feature as the http://tizen.org/feature/location.gps OR http://tizen.org/feature/location.wps feature. (If the feature list includes the http://tizen.org/feature/location.gps and http://tizen.org/feature/location.wps features together, only a device which supports both those features can show the application.)
To add the feature list for application filtering: