This topic is an introduction to developing Web applications for Samsung devices. It describes how to get started with the Samsung TV SDK, the characteristics and structure of Web applications, some useful APIs and features, and ways you can test your applications.
Tizen Developers
API References
This topic is intended for developers with experience in creating Web applications. If you have not developed a Tizen Web application before, first familiarize yourself with Tizen Developers.
To begin application development with the Samsung TV SDK:
Important Keep your certificates backed up in a safe location. When you update your published applications, the update must be signed with the same author certificate as the original application. If the applications are signed with different author certificates, the update can be recognized as a different application and not an update.
Keep your certificates backed up in a safe location. When you update your published applications, the update must be signed with the same author certificate as the original application. If the applications are signed with different author certificates, the update can be recognized as a different application and not an update.
If you have questions about using the SDK, share them in the community forum.
When designing a Web application for a Samsung device, pay attention to the following application characteristics:
Remote control functionality The remote control is the main way for users to interact with a TV or a digital signage from a distance. For more information, see User Interaction.
Simple UI The large screen devices like TV, signage and interactive white board have a simpler user interface (UI) than a mobile device. You must consider the user experience when designing the UI.
Scalable application resolution On device, the screen aspect ratio is 16:9. For the UHD device model groups, the standard application resolution is 1920x1080 px, and for the FHD device model groups, it is 1280x720 px. To prevent whitespace and scroll bars from appearing when the application screen is scaled, keep the aspect ratio at 16:9 even when the application resolution is different from the standard.
Common Web application features Samsung device Web applications can have most of the same features as Web applications for other devices. You can use Web standard functions, such as mouse support, video elements, animations, and visibility change notifications. You can also use Tizen Web Device APIs and Samsung Product APIs supported by Samsung devices. For more information, see the API References.
A Tizen Web application consists of HTML, CSS, and JS files, and a "config.xml" file.
Figure 1. Application structure
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 element as its root. These elements represent the application information, such as version, features, and privileges available for the application. The configuration information is used when you install or run the Tizen Web application. For more information, see Configuring Web Applications.
You can implement the following features in your application:
show()
tizen.tvwindow.show(function(){}, null, ['0', '0', '50%', '50%'], 'MAIN');
TVAudioControl API You can control the volume level or mute status of the device, using the TVAudioControl API:
tizen.tvaudiocontrol.setMute(true); tizen.tvaudiocontrol.setVolume(10);
Samsung Product API and VOD features The Samsung Product API provides additional functionalities beyond those offered by the Tizen Web Device API, such as retrieving information about the device and platform, displaying subtitles, and playing VODs. You can implement VOD playback in 2 ways:
video
The following remote control keys are needed to control VOD playback:
KeyName
MediaPlayPause
KeyCode
Screensaver To prevent screen burn, the screensaver is shown after a defined amount of time, if the device screen has been displaying a still image or if there has been no user input. For more information, see Setting Screensaver.
Viewport scaling If you create an application for resolutions different than the standard resolutions, you can scale the resolution up or down, using the viewport meta element. For more information, see Managing Screen Resolution.
viewport
Input method editor (IME) When an input or textarea element is focused, the virtual keyboard is shown. The virtual keyboard is automatically hidden when a key on a connected external keyboard is pressed. For more information, see Keyboard/IME.
input
textarea
iframe elements You can insert remote pages into your application using the Web standard iframe element. For more information, see the W3C recommendation for HTML5.
iframe
<iframe width='960px' height='540' src='https://www.youtube.com/embed/7xBT-UDAHX8'></iframe>
Note When using iframe elements in Web applications, the following limitations apply: Only the following sandbox attributes are available: allow-same-origin, allow-scripts, allow-forms, allow-top-navigation Tizen and Samsung Product APIs cannot be used in iframe elements. The "frame flattening" feature, supported in Tizen mobile Web applications, is supported in neither TV applications nor display device applications. On the emulator, iframe elements for remote sources do not work as expected.
When using iframe elements in Web applications, the following limitations apply:
allow-same-origin
allow-scripts
allow-forms
allow-top-navigation
Web storage and device file system You can store application content and data, such as user information, in Web storage and the device file system. For more information, see Using Web Storage and Managing File Operations.
Note For your application to be published on Samsung Apps TV, you must make sure that all user login information is deleted when the application is uninstalled. After deleting and reinstalling the application, there must be no user login information available from the previous installation.
For your application to be published on Samsung Apps TV, you must make sure that all user login information is deleted when the application is uninstalled. After deleting and reinstalling the application, there must be no user login information available from the previous installation.
TLS support To transmit encrypted information between Web browsers and Web servers, Samsung device supports TLS (Transport Layer Security) versions 1.0, 1.1, and 1.2. SSL (Secure Sockets Layer) is not supported.
To test your application during development, you can use the TV simulator provided in the Samsung TV SDK, or an actual Samsung device:
Note The TV emulator does emulate only TV device. It does not supoprt signage, interactive white board and other large screen devices.
The TV emulator does emulate only TV device. It does not supoprt signage, interactive white board and other large screen devices.