Samsung Smart TV Tizen Spike
tags: #Work/stonehenge/samsung
Important Documentation/Links for Development
- Samsung Developer Home Page
- Samsung Smart TV Page
- Samsung Smart TV Specification
- Samsung Smart TV - Web Engine Specification
- Samsung Smart TV - TV Model Groups
- Samsung Smart TV - Product API Ref
- Samsung W3C/HTML5 API Ref
- Samsung Smart TV - Example (Media)
- Samsung Smart TV - Legacy Platform
- What year is my Samsung TV?
- Introduction to Web Applications | Tizen Developers
- Tizen CLI Commands
- SDB - Smart Development Bridge CLI
- Tizen Web Device API Ref
Additional Resources
- Ultimate Guide to Samsung Tizen TV development
- Simple Samsung TV + React Router
- Samsung Examples - Video
- Samsung Example - Voice/Media Controls
- Samsung Example - HTML5 Player
- How to clock the screensaver during video playback
- Tizen Hints, Tips, & Tricks
- Youi.TV docs - Tizen - Not everything is relatable since we’re not using the Youi.TV engine; however, it’s good documentation.
Samsung Account Login
- Username: epixdevqa@gmail.com
- Password: epixqa260
General questions I want to figure out
- How do I use WIT
- How do I use TOAST - it’s a plugin that you us in a Cordova app.
- What’s the difference between TV 4.0 & 5.0 ::4.0 is 2018 Models - 5.0 is 2019 Models::
- Should we use a Cordova wrapper (preferred) or another solution? If there is a demand to support legacy devices (TV < 2015) then I would suggest using “Toast”, which is a plugin for Cordova. Outside of that it's easiest to just make the web
- Find solution that works with web-kit / chromium (for TV's < 2015) - TOAST w/ Cordova
- Aria support (text to speech) - There is an API for this
- Speech-to-text-support - There is an API for this
- What would a non-hosted solution be? This is the least friendly way to do development, but if you move a build over to the Tizen Project and correct the file paths it works, with privileges.
Getting Started
Installation process
-
Download Tizen Studio ::for 2015 - 2019 Models::
-
Follow Installation Guide
-
The Package Manager should open automatically. Inside thePackage Manager > Main SDK you’ll want to install ::5.0 & 4.0 TV:: SDK’s
-
Inside thePackage Manager > Extension SDK you’ll want to install
- ::TV Extensions-5.0::
- ::Samsung Certificate Extension::
- ::TV Extensions Tools::
First (basic) TV Application
- Follow Creating TV Applications
- Using a Sample application lets you see how things are set up, Template will be what we ultimately want.
- Once you’ve create a project you’ll want to follow Using SDK > TV Device to run your application on the actual device. ::PREREQUISITES - TV has latest firmware, TV & Computer on same network, and create certificate profile::
It will give you a Certificate location & you’ll provide a Backup Path This is VERY important when you get to the actually pushing to the store, but for development and playing around you can just delete them and create no problem.
- Distributor Certificate you’ll need the Device Unique ID (DUID), which can be found in your TV Settings > Support > About This TV
Connecting Computer to Samsung TV
::This is best done with an ethernet connection::
- Put the target TV in “Developer Mode” Connecting the TV & SDK Essentially go to the “Apps” page and using the remote enter “1, 2, 3, 4, 5” and enter in your computer’s IP address ::Make sure you’re on the same network::
- Using the Device Manager that comes with Tizen IDE you should be able to toggle the connection. Although, it’s pretty consistent if you run into issues using
sdb
Smart developer bridge, which is a tool that comes with the installation of Tizen you can run the commandsdb connect <target-IP>
and being able to see currently connected devicessdb devices
- To run the project most documentation shows using the top “Play” icon,
which I personally ended up getting an error stating “Closed”. To get around this there are two options.
3.1 - If you
right-click
the project in the Explorer view and select Run As > 1. Tizen Web Application even though this seems to be the same as above, it for whatever reason works. 3.2 - You can use thetizen cli
tool by running the commandtizen install -n <project-build-file>.wgt
to get a*.wgt
file, which is an extension that represents a “widget” (Tizens way ofzipping
up a build version of theweb-app
). Tizen’s IDE crashes when it has to build anything that’s bigger than their example projects, so I installed theVSCode
tizen extension, which has commands to build the project that goes way faster.cmd + shift + p
&Tizen Build Package