Grunt task for prepare and build the cordova project with sectv-***
platforms.
This project would help who makes Samsung Tizen TV or Legacy Samsung Smart TV web application using cordova. It provides several grunt task:
-
sectv-prepare
: Creates application project for each platforms from your cordova project. The target must be one ofsectv-orsay
andsectv-tizen
andtv-webos
.-
Options for the task:
'sectv-prepare': { // task 'sectv-orsay': { // target dest: 'platforms/sectv-orsay/www', // Destination path to create the application project. platformRepos: '../cordova-sectv-orsay', // Path to 'sectv-***` cordova platform's repository. scripts: { // copy the scripts to the application project. <destination>: <source>. 'cordova.js': '../cordova-js/pkg/cordova.sectv-orsay.js', 'toast.js': '../cordova-plugin-toast/platform_www/sectv-orsay/toast.js' } } }
-
-
sectv-build
: Packaging the application project into each platforms package file format like.zip
or.wgt
or.ipk
. The target must be one ofsectv-orsay
andsectv-tizen
andtv-webos
.-
Options for the task:
'sectv-build': { // task 'sectv-orsay': { // target www: 'platforms/sectv-orsay/www', // Path to Application project dest: 'platforms/sectv-orsay/build' // Directory to create the package } }
-
- cordova-sectv-orsay is an application library that allows for Cordova-based projects to be built for the Legacy Samsung Smart TV (A.K.A Orsay) Platform.
- cordova-sectv-tizen is an application library that allows for Cordova-based projects to be built for the 2015's Samsung Tizen TV Platform.
- cordova-tv-webos is an application library that allows for Cordova-based projects to be built for the WebOS TV Platform.
- cordova-plugin-toast is an Cordova plugin that provides TV Specific functionalities for Smart TV application.
$ npm install grunt-cordova-sectv
-
Make a cordova project using cordova CLI.
./ |- cordova-js |- cordova-plugin-toast |- cordova-sectv-orsay |- cordova-sectv-tizen |- cordova-tv-webos `- MyApplication
-
Copy the contents in
sample/*
of this project to the root directory of your cordova project. -
In the cordova project's root:
$ npm install
grunt-cordova-sectv
will be installed also since thesample/pacakge.json
defines it as a dependency.
- sectv-orsay
- sectv-tizen
- tv-webos
-
In the cordova project's root:
$ grunt sectv-prepare:<platform>
-
<platform>
can be one of supported platforms. If you want to prepare all platforms:$ grunt sectv-prepare
-
For more details, please see the
sample/Gruntfile.js
of this project.
-
It is sometimes necessary to add something to each platform which maybe not mandatory but needed.
-
Mandatory elements
-
In
config.xml
of your Cordova project, please add elements in each platform tag. And these elements will be automatically added to each platform when preparing. - In case orasy and tizen, elements format is XML tag. - In case webos, elements format is JSON.```xml <platform name="sectv-orsay"> <multiapp>y</multiapp> </platform> <platform name="sectv-tizen"> <tizen:metadata key="http://samsung.com/tv/metadata/prelaunch.support" value="true" /> </platform> <platform name="tv-webos"> {"appDescription": "This is an sample application"} </platform> ```
-
For more details, please see the config.xml reference on Cordova site.
-
Packaging for
sectv-tizen
-
Set the path of environment variables
-
Case 1. Tizen TV SDK 2.4 (previous version)
C:\tizen-sdk\tools\ide\bin
-
Case 2. Tizen Studio (Recommend)
C:\tizen-studio\tools\ide\bin
-
-
In the cordova project's root/Gruntfile.js:
// Fill out your 'profilePath' and 'profileName' 'sectv-tizen': { profilePath: '/home/TizenSDK/tizen-studio-data/profile/profiles.xml', profileName: 'myprofile', www: 'platforms/sectv-tizen/www', dest: 'platforms/sectv-tizen/build' }
-
profilePath
- In the SDK workspace:
<yourWorkspace>/.metadata/.plugins/org.tizen.common.sign/profiles.xml
-
profileName
- In the SDK:
- window > Preferences > Tizen SDK > Security Profiles
profileName
: Activated Profile name
- In the SDK:
-
If you couldn't find
profiles.xml
, please refer How to share Author Certificate
-
-
Packaging for
tv-webos
-
Set the path of environment variables
C:\webOS_TV_SDK\CLI
-
-
In the cordova project's root:
$ grunt sectv-build:<platform>
-
<platform>
can be one of supported platforms. If you want to package all platforms:$ grunt sectv-build
-
For more details, please see the
sample/Gruntfile.js
of this project.
Not yet