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 of sectv-orsay
and sectv-tizen
and tv-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 of sectv-orsay
and sectv-tizen
and tv-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
}
}
$ 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 the sample/pacakge.json
defines it as a dependency.
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
<yourWorkspace>/.metadata/.plugins/org.tizen.common.sign/profiles.xml
profileName
profileName
: Activated Profile nameIf 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