k

Building an IPTV Application on Android

Building an IPTV Application Case Study

Client

MeU’s client is a US software company, and they were looking for an outsourcing company that can develop a new IPTV platform that is intuitive, dynamic and simple to use on smartphones to mainly serve the customers in the US. In an effort to boost its subscriber base through the introduction of the latest IPTV/OTT features and value-added services.

Challenges

The client approached MeU Solutions with a request for an Android app (must optimize and compatible with both smartphones, tablets, and most recent Android versions) to give their customer easy access to their TV channels on mobile devices anywhere, and anytime. They will be able to choose Live TV streams, or they can select their favorite program from the TV program such as movies, theatre, or shows. There are following challenges that the development team had to face up:

          • Our major concerns were to ensure that the huge amount of content in the app stayed manageable for the client; stayed synchronically with thousands of program providers which the program links are dynamic and changeable at any time.
          • The design and UI should be simple and attractive. A user should not experience any difficulties in using the app navigation.
          • Scalability to handle a large user base: another major challenge was to build a platform robust in functionality with a scalable architecture. Being an IPTV application, it drew the interest of almost everyone in the US region. Hence, scalability was a critical aspect.
          • To adapt the application to the old devices and consider the devices with poor HTML5 support and low-performance JavaScript engine.
          • To achieve high performance of the application even if a user has a slow Internet connection by reducing the amount of transmitted data.
          • To account for the differences between a real device and an emulator provided by Android SDK.
          • Lack of devices that have different versions for testing and have to make sure that UX/UI and all functions work well. UI of the Android app may display inconsistent on each android version.
          • Time to prepare and design for UI of the app is short and lacking document and requirement from the client.
Putting out high-quality and feature-packed apps is one thing, but making sure that they are bug-free and operate smoothly is quite another. That is why MeU also provides quality assurance for testing the app. The most problems that are there hundreds of combination from android version, screen sizes of mobiles and tablets

Solutions

The dev team took the first step of creating a list of requirements with the client via regular brainstorming sessions. Make a good plan with detail time and budget for designing, setting up the environment, developing front-end and back-end clearly. The requirements were then given a visual representation in terms of wireframes, which represented the probable user flow on the platform.

We then assigned relative priorities to the features for identifying the minimum viable product and kept the extra features out of the first release. This helped to keep the costs down and value high.

MeU designers created smart UI that allows the app users to access any function with a few clicks. Many functions were assigned to remote control buttons. Besides, to hold the innovative mood of the app’s overall visual style, we selected a color palette that includes various shades of white and light blue is the primary color for our application.

To ensure high performance of the app and avoid network delays, the developers came with some approaches to reduce the load on the server which helps to bring a good experience to the user with the slow network connection.

To ensure that the client will get a stable bug-free application that meets their needs, the QA team will apply Context-Driven Testing, Exploratory Testing combined with testing tools One2Explore (testing record tool) and One2Test (test management tool) – developed by our company to gain efficiency in learning and understanding the system while playing, exploring & testing the application. Besides that, the QA team also utilize the MeU Automation solution – called One2Automate to support regression testing which integrated test design, automation, and management tool and can be easily expanded and maintained with each new release cycle.

User Features

 

Admin Features

 

Watch among hundreds of favorite US channels Live.

TV schedule

Watch TV shows

Add channels and movies to “favorite”

Watch recorded TV programs

Select from the library of movies categorized by type, genre

Display info about the programs and channels

Get notifications on expired subscriptions etc.

Payment and Subscription

Manage user accounts

Search and filter option

Video player capable of decoding video in different formats

Pull-to-refresh list

Video streaming optimization depending on the connection speed

Support Multilingual

User Management

Manage User Profile

Manage Users’ Credentials

Setting up the user permissions for system access

IP block

Category Management

Channel/Movie/Program Management

Periodic checking of third-party server APIs to ensure their proper functioning for maximum system availability

Package Management

Manage membership

Promo code management, Manage discounts and offers

Payment Gateway Integration

Sale Reports

Sale report generation

Technology Stack

The platform development started with building a mobile version for the users, while the administrative side was managed on a custom developed back-end. The technologies used were:

Android

 

Web

 

Android OS support:
4 to 4.4 and aboveDevelopment:
Android Studio 2.2Android Supported Devices:
800*480, 1280*720, 1920*1080, 720*1280, …Language Support:
English, Vietnamese, China, Spanish,…
Technology: PHP, JavaScript, HTML5, Java

Database: MySQL

Language Support:

English

Browser/Device Compatibility:

IE 9.0+, Mozilla, Chrome, Safari

Server Specification: AWS cloud infrastructure: EC 2 – Instance, S3, Linux OS-Ubuntu Install

CI and CD: Jenkins, Dockers

Results

The following results have been achieved in our project:

            • Website optimization for availability in low bandwidth situations
            • The customer has got a stable bug-free application that meets the needs of their clients for watching movies, theatre, or shows.
            • The user can easily pay for the subscriptions through payment gateway of their choice like PayPal, credit cards, etc.
            • The application’s architecture has the potential to be upgraded to the future versions with the review, rating and comment feature, support to cast the mobile screen to the TV, support voice control and gesture navigation…

PROJECT TYPE

TECHNOLOGIES

Case Study Full Version

    Previous Project
    Next Project