top

Configuring TV Applications

This topic describes Web application configuration, especially for privileges and features specific to Samsung TVs. Many privileges and features available for mobile and wearable Web applications are also available for TV Web applications.

All Tizen Web application projects must have a "config.xml" file in the project root directory. The configuration file is composed of XML elements, including the <widget> element as its root. The configuration information is used when you install or run the Tizen Web application.

The "config.xml" file contains the following information:

  • Application ID
    The Samsung TV SDK automatically creates an application ID, which uniquely identifies the application within the package.
    <tizen:application id='{Package}.{Project Name}' ... />
    
  • Application version
    The application version format is "x.y.z".
    <widget … version='{0-255}.{0-255}.{0-65535}' ... />
    
  • Application icon
    File path for the launcher icon.
     <icon src='Icon Path' />
    
  • HTML content
    File path for the start-up file of the Web application. By default, it is the "index.html" file in the root directory.
    <content src='HTML Path' />
    
  • Privileges
    Tizen and Samsung TV APIs that handle platform and user-sensitive data require privileges that must be declared before the APIs can be used.
    <tizen privilege name='http://tizen.org/privilege/Privilege Name' />
    <tizen privilege name='http://developer.samsung.com/privilege/Privilege Name' />
    
  • Network access policy
    According to the W3C Access Requests Policy (WARP), you cannot access network resources by default. For more information, see Defining External Access Policies in the Policy Tab.
  • Meta data features
    Some features, such as prelaunching, are implemented by adding values to the metadata element.
  • Mouse support
    Interaction with the application using a mouse, is enabled by default. If you want to disable it for your application, add the following line to the "config.xml" file:
    <tizen:setting pointing-device-support='disable' /> 
    

In the Tizen Studio, you can edit the configuration file in 2 ways:

  • Web Configuration Editor
    You can easily set the project configuration (manifest) using a form editor, even if you have no experience in developing a Tizen Web application project.
  • Configuration source editor
    If you are fluent in the configuration file XML structure, you can modify the XML structure directly through the configuration source editor.

For more information, see Setting Project Properties and Configuring Applications.

Privileges

To use security-sensitive APIs, you must declare the required privileges and sign your application with a certificate for the appropriate privilege level. You can add privileges to the "config.xml" file using the "Privileges" tab of the Configuration Editor in the Tizen Studio.

Figure 1. Adding privileges

Figure 1. Adding privileges

Tizen API

The following table lists the privileged Tizen APIs specific to TVs.

For more information on Tizen API privileges, see Security and API Privileges.

Table 1. Tizen API privileges
Privilege Level Related API
http://tizen.org/privilege/tv.audio Public TVAudioControl API
http://tizen.org/privilege/tv.channel TVChannel API
http://tizen.org/privilege/tv.display TVDisplayControl API
http://tizen.org/privilege/tv.inputdevice TVInputDevice API
http://tizen.org/privilege/tv.window TVWindow API

Samsung Product API

The following table lists the privileged Samsung Product APIs specific to TVs.

Table 2. Samsung Product API privileges
Privilege Level Related API
http://developer.samsung.com/privilege/allshare Public ASFService API
http://developer.samsung.com/privilege/billing Billing API
http://developer.samsung.com/privilege/drminfo Partner DrmInfo API
http://developer.samsung.com/privilege/drmplay Public setDrm() method of the AVPlay API
http://developer.samsung.com/privilege/microphone Microphone API
http://developer.samsung.com/privilege/network.public Network API
http://developer.samsung.com/privilege/productinfo ProductInfo API
http://developer.samsung.com/privilege/sso.partner Partner SSO API
http://developer.samsung.com/privilege/widgetdata Public WidgetData API

Meta Data

Some features are implemented by adding key-value pairs to the metadata element. You can add meta data in the "Tizen" tab of the Configuration Editor in the Tizen Studio.

Figure 2. Adding meta data

Figure 2. Adding meta data

The following table lists the meta data keys available for TVs.

Table 3. Meta data
Key Value
(default in bold)
Supported Models Description
“http://samsung.com/tv/metadata/prelaunch.support” true
“false”
Since 2015 Enable or disable prelaunching.
The default value is “false” for 2015 models.
“http://samsung.com/tv/metadata/use.preview” JSON file path Since 2016 Content for Smart Hub Preview.
“http://samsung.com/tv/metadata/gamepad” Gamepad model name Require a specific gamepad model to be connected.
“http://samsung.com/tv/metadata/use.network” true
“false”
Since 2015 Enable or disable checking the network connection when the application is launched.
“http://samsung.com/tv/metadata/use.voiceguide” Since 2016 Enable or disable voice guide for the application, if the user has enabled it in the TV settings.
“http://samsung.com/tv/metadata/auto.update” Since 2015 Enable or disable automatically updating the application during regularly-scheduled updates.
“http://samsung.com/tv/metadata/force.update” “true”
false
2015 to 2016 Enable or disable automatically updating the application outside regularly-scheduled updates.