mautilus / sdk

MAUTILUS SmartTV SDK
BSD 3-Clause "New" or "Revised" License
98 stars 43 forks source link

Compile/Export project to each platform #15

Closed jorgitoml closed 8 years ago

jorgitoml commented 8 years ago

Hi! Can you tell me whats the way to compile one app for every supported platform? For example, If I develop an app that must work in Samsung Orsay, Samsung Tizen, LG Netcast and LG WebOS...how can I generate the their specific files to test the app on my TVs?

I've readed the Mautilus SDK tutorial (http://smarttv.mautilus.com/SDK/#!/guide) but here does not explains whats the way to "compile/export" the code for each platform.

Best regards.

SoCoxx commented 8 years ago

Each platform and each OS has it specific method. As SmartTV developer, you should know these steps :) Samsung Orsay - just copy application folder into the USB root and plug it into TV Samsung Tizen - you must use Samsung Tizen SDK, create project, copy files into it and create wgt file. Create "userwidget" folder in the USB root and copy wgt file there. Plug it into TV LG - Login to http://developer.lge.com, click Resource center -> Netcast / WebOS -> Test -> App test -> New App Test. Fill: Name, Icon, App type: "web", Model: one from the dropdown. URL: ./index.html and File upload: compressed application in ZIP. After submit, you will be able to download DRM applied file.

As you see, there is lots of proprietary steps, that can't be automated. That is why the SDK doesn't come with any compiler or publisher. It is just not possible.

jorgitoml commented 8 years ago

Thanks, I thought that there were an automatic option for do this. Best regards.

radimbuchtela commented 8 years ago

Hi, oh yes, for easier development I can only recommend to have structure of project where you transparently keep all assets specified for each platform like this:

- configurations/
    - samsung/
        - config.xml
    - tizen/
        - config.xml
    - webOS/
        - appinfo.json 
    - lg/
        - 291599/
            - developer.test
            - manifest.xml
- css/
- img/
- js/
- icons/
    - samsung/
    - tizen/
    - webOS/
    - lg/
- config.js
- index.html

and use own script to create .zip packages for individual platforms. E.g. we use Grunt.js for this work which produces something like this.

proj_v0_0_0_samsung.zip
proj_v0_0_0_tizen.zip
proj_v0_0_0_lg.zip
proj_v0_0_0_webOS.zip

BUT then you must process it according to specified platform as SoCoxx wrote above. E.g. for Tizen, you need to copy files from proj_v0_0_0_tizen.zip to the project created inside Tizen IDE and create .wgt via this IDE and also similarly for WebOS.

Example of script you can see https://github.com/mautilus/sdk/blob/master/examples/PlayerKeyboardInfo/build/Gruntfile.js

Allan-Nava commented 3 years ago

Each platform and each OS has it specific method. As SmartTV developer, you should know these steps :) Samsung Orsay - just copy application folder into the USB root and plug it into TV Samsung Tizen - you must use Samsung Tizen SDK, create project, copy files into it and create wgt file. Create "userwidget" folder in the USB root and copy wgt file there. Plug it into TV LG - Login to http://developer.lge.com, click Resource center -> Netcast / WebOS -> Test -> App test -> New App Test. Fill: Name, Icon, App type: "web", Model: one from the dropdown. URL: ./index.html and File upload: compressed application in ZIP. After submit, you will be able to download DRM applied file.

As you see, there is lots of proprietary steps, that can't be automated. That is why the SDK doesn't come with any compiler or publisher. It is just not possible.

I cannot compile correctly for tizen