I am doing some research on SmartTV development right now and the topic seems very very fragmented.
I mean:
If you want to develop a android app, you get eclipse and the android sdk.
If you want to develop for iphone, you get xcode.
But SmartTV?
There is a Samsung SDK, a LG SDK, Google TV, a SmartTV Alliance SDK...
So what should I choose?
Especially if i want to
- write once, run everywhere
- enjoy mature development environment and tools
If you want to write once... you should choose the "The App Engine" but it's not free, it costs 48.000$/year with a max of 8 apps developed.
The second option is the SmartTV Alliance SDK.
The most mature SDK is the Samsung one, the LG one is good too but support from the manufacturer is not so good.
HTML is surely the best promising technology but we should consider that the market is very fragmented now. The first manufacturer/platform that obtains an important role will own the entire (and growing) market.
Actually the best options (in my opinion) are:
- PlayJam: they have a big experience and they're the most advanced platform today, they're partnering Steam too
- Google TV: it could become the Android of TVs... indeed, it's an Android-powered OS and LG, Samsung, Sony and Vizio already have a GoogleTV-device, Philips will add itself soon to the list.
So far the only two options are Adobe AIR and HTML, what do you have to develop?
We're developing some casual games and we use Adobe AIR
http://www.youtube.com/watch?v=0e8cmy1Vmic
http://www.noriste.com/lg-smarttvs-adobe-air-3-0-and-app-test/
Some (maybe obvious) links:
Samsung SDK - supports Java, HTML, Adobe AIR - samsungdforum.com
LG SDK - supports HTML, Adobe AIR, Unity - developer.lgappstv.com
Google TV SDK - supports Java, HTML, Adobe AIR, Unity - developers.google.com/tv/android
SmartTV Alliance SDK (LG, Sharp, Philips) - supports HTML - smarttv-alliance.org
NetTV SDK (Sharp, Philips) - supports HTML - yourappontv.com
Roku SDK - supports C++, Unity - roku.com/developer
PlayJam SDK - supports Adobe AIR, runs on LG and Samsung (they'll support HTML) - playjam.com
TV App Engine - supports HTML and converts apps into native ones - tvappagency.com
Marmalade - supports C/C++ and integrates the PlayJam APIs - madewithmarmalade.com
Yahoo Connected TV - supports HTML - connectedtv.yahoo.com/developer
Opera TV - supports HTML - dev.opera.com/tv
We are developing cross-plaform. It is all about the experience. Once you finish 2 or 3 applications you are aware about the differences between Samsung, LG, Sony, Philips and Panasonic and you can work with that. Of course the QA process and testing on TVs is different chapter - we have 30 TVs for testing only.
On the other side we have 30 Android phones as well, so comparing Android and SmartTV fragmentation I do not see that big differences, same situation was on Symbian, similar issues you have across different web browser versions or even iOS versions.
It is nothing that should scary or stop you.
BR
Petr
www.mautilus.com/blog
Try BBC Tal frame work, its open source and supports most of the smart tv
http://fmtvp.github.io/tal/getting-started/introducing-tal.html
Building Android TV Apps
Android offers a rich user experience that's optimized for apps running on large screen devices, such as high-definition televisions. Apps on TV offer new opportunities to delight your users from the comfort of their couch. More...
Dependencies and Prerequisites
- Android 5.0 (API level 21) or higher
- Android Studio 0.8 or later and Gradle 0.12 or later
Building Apps for TV more detail here..