Configuring Web 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 Web applications.


Related Info


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 Product 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 Configuring Applications and Setting Project Properties.

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

Tizen API

The following table lists the privileged Tizen APIs specific to Smart TVs and display devices.

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

Privilege Level Related API
http://tizen.org/privilege/tv.audio Public TVAudioControl 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

Table 1. Tizen API privileges

Samsung Product API

The following table lists the privileged Samsung Product APIs specific to Smart TVs and display devices.

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/drmplay 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

Table 2. Samsung Product API privileges

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

The following table lists the meta data keys available for Smart TVs and display devices.

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.

Table 3. Meta data