
Hello! In this article I want to share my experience in developing applications for the LG Smart TV platform. Personally, I started my way with Smart TV developer from this platform and would like to recommend it to anyone interested in this application direction. First of all, this is due to the fact that in terms of the quality of the documentation and the capabilities provided to the developer, LG is not inferior to its main competitors from Samsung. At the same time, LG R & D's St. Petersburg laboratory specialists are quite open and always ready to provide up-to-date information, while for several months I’ve been trying to get at least someone who can clearly answer technical questions from their colleagues at Samsung’s Moscow development center. . I’d rather not mention the other participants of the Smart TV market: the way they approach interaction with those who, in theory, should fill their app stores, raises great doubts that they are generally interested in something was developed.
One of the products of our team is the
Simple Smart IPTV application, which appeared in the LG Smart World on April 29 of this year, less than a month after we were announced winners in the LG Smart TV Apps Contest 2012. From the very first days, SS IPTV took a strong position in the top free applications where remains to this day.
Since the article is primarily aimed at newbies, I would like to start with two contradictory, but in spite of this, equally common misconceptions about creating Smart TV applications.
Misconception the first - to develop applications for smart TV is very difficult.This is not true. In most cases, when we are talking about creating Smart TV applications, we are talking about the layout of the html page, embodying all the necessary functionality. The technologies used to create such applications (HTML 5, CSS, JS) are well described and have long been known to many.
')
The second misconception - to develop applications for Smart TV is very simple.This is also not the case. This misconception probably spreads to those who did not face this task directly, but is only familiar with it in general terms. The technologies used in the development must take into account the functional features of the platform and meet the requirements for the user interface. Without an understanding of this, it is possible to create a magnificent and potentially demanded product in only 2-3 months, and then spend another year to go through the quality control in LG QA.
Below, I present a few basic tips, following which will greatly facilitate your work and save a lot of nerve cells:
1. Carefully read the documentation.Studying the documentation posted on LG Developer in the
Library and
Technical Notes sections is what every future Smart TV developer should start with. The documentation includes a detailed description of the LG Web API, the capabilities of the Netcast platform and all sorts of specifications. Particular attention should be paid to documents called
LG Smart TV and Media Product UI Guideline - it contains user interface requirements that must be strictly followed.
2. Do not trust the documentationDespite the fact that the documentation presented on the LG Developer website will become your main source of information on development, you shouldn’t trust it unconditionally, check in practice those moments that may cause you to doubt. Platform capabilities are often broader than described in the documentation.
3. Use for testing real TVsThe LG Smart TV SDK includes TV emulators of all model ranges. They work well and are definitely indispensable in development. Nevertheless, it is very important at all stages of creating an application to use real TVs for testing (preferably different release years), since emulators cannot take into account all the features of the platform and current firmware. Otherwise, you risk getting an application that works great in the emulator, but does not run on the TV.
4. Start simpleDo not try to create the best application in the world from the very beginning - this is a sure way to get bogged down in squabbles with QA and delay the product launch on the market for long, long months. In my opinion, it is much easier and more correct to create a relatively simple, but full-featured application, flawless from the point of view of “guidelines” and gradually improve its functional characteristics.
5. Do not make packaged applicationsFrom the point of view of placing the source code, the application can be packaged (hosted on the LG server, fully copied to the user's TV during installation) and hosted (launched from the user's TV by reference). It will take you at least a week to make any change to the packaged application, since in this case the entire verification process in LG QA takes place anew, from and to. Changes can be associated not only with your desire to expand the functionality, but also with the correction of the deficiencies identified during the operation of the product. But even if your application works flawlessly today, there are no guarantees that tomorrow, with the release of the new firmware, it will work as well. Therefore, you should always have the opportunity for surgical intervention.
6. Do not use third-party libraries like jQuery or backboneIt is very important to remember that TV is not a computer: the resources allocated for the operation of Smart TV applications are quite limited and should be used very carefully. The use of third-party libraries, which at first glance make it possible to simplify the development process, can lead to significant losses in productivity and the impossibility of subsequent improvement of the product. A more correct approach here is to create your own libraries, adapted for real needs and taking into account the specifics of the platform.
7. Do not include examples from the LG Develop website.Examples placed in the
Tools and Samples section cannot pass the quality control. It is a fact. You can use them to familiarize yourself with the capabilities of a particular API function, but you cannot make them part of a turnkey solution.
8. Carefully arrange the accompanying documentation.The accompanying documentation for the application includes a
Self checklist and a
presentation with screenshots detailing the operation of the application. Documentation is filled in English.
Self checklist is a questionnaire that affects the main problems encountered in developing applications: you must declare that these problems have not been reflected in your product. Answers to questions cannot remain empty or have the value failed - this means automatic failure at the very first stage of testing. If you encounter contradictions with the “guidelines” in the questionnaire, remember that the status of “guideline” is higher, and the obligatoriness of their execution is unconditional.
The presentation should describe in detail the structure and functionality of your application, all disputable situations (use cases) must be reflected in it. Often, if the testers are not satisfied with one or another use case, it is enough to add it to the presentation and indicate this in the comments to the application.
Here, perhaps, and all for today, I hope this material will be useful to you.
Of course, only the basic aspects of the development process are touched upon here - the finer points will be reflected in the next article.