Table of Contents

    What is AppleTV?

    With Apple TV on tvOS, users can play games, use productivity and social apps, watch movies, and enjoy shared experiences. ManekTech Mobile team helps companies capitalize on the opportunities that Apple TV offers with custom Apple TV app development services that redefine user experiences and change how people interact with content. The new face of Apple Tv Generation 3 has redefined user experience and have changed how people interact with apps. This new face of Apple Tv inspired number of startups and enterprises to take crucial step towards Apple Tv app development.

    Hardware specifications:

    64-bit A8 processor
    32 GB or 64 GB of storage
    2 GB of RAM
    10/100 Mbps Ethernet
    WiFi 802.11a/b/g/n/ac
    1080p resolution
    New Siri Remote / Apple TV Remote

    Storage - Storage on Apple TV is limited, and there is no guarantee that information stored on the device will be available the next time a user opens your app. Also, in order to share the user’s data across multiple devices, you need to store the user’s information somewhere other than the Apple TV. Apple provides two shared storage options for Apple TV: iCloud Key-Value Storage (KVS) and CloudKit.

    iCloud Key-Value Storage (KVS) - For small storage needs, under 1 MB, your app can use iCloud KVS.

    CloudKit - For large storage needs, greater than 1MB, your app needs to implement CloudKit.

    The difference

    Apple TV does not have a mouse that allows users to directly select and interact with an app, nor are users able to use gestures and touch to interact with an app. Instead, they use the new Siri Remote or a game controller to move around the screen.To put in a nutshell, the overall user experience is drastically different.

    Applications: The process for creating apps for Apple TV is similar to the process for creating iOS apps. You can create games, utility apps, media apps, and more using the same techniques and frameworks used by iOS. New and existing apps can target both iOS and the new Apple TV.

    Provisioning Profile: A new Apple TV-specific provisioning profile is required for Apple TV development and distribution, which is used with your existing iOS development and distribution signing identities. You create a new Apple TV provisioning profile the same way that you create an iOS provisioning profile, using Fix Issue in Xcode, or through the developer portal website.

    Building Apple TV Apps

    All video playback on Apple TV is based on HTTP Live Streaming and FairPlay Streaming.

    Apple TV makes it easier to create client-server apps, whose primary purpose is to stream media, using web technologies such as HTTPS, XMLHTTPRequest, DOM, and JavaScript. You use Apple’s custom markup language, TVML, to create interfaces, and you specify app behaviors using JavaScript. The TVMLKit framework provides the bridge between your native code and the JavaScript code in your user interface.

    You specify your app’s initial launch behavior in a JavaScript file. Create your binary app as you typically would, and then use the TVMLKit framework to load the JavaScript file. Your JavaScript file loads TVML pages and displays them on the screen. Create TVML pages using templates supplied by Apple. Each template produces a unique, full-screen display of information. You modify a page by adding or removing elements from a template.

    How does it work?

    Your JavaScript file loads TVML pages and pushes each page onto the navigation stack. As the user navigates through your app, TVML pages are pushed and popped from the stack. After the user closes your app, the Apple TV home screen appears. Figure shows the Client-server model.

    How to build a client-server app:

    1. Open Xcode and create a new project.
    2. Select the Single View Application template from tvOS.
    3. Remove the view controller file and the main storyboard for the app.
    4. Open the info.plist file and remove the Main storyboard file base name entry.
    5. Make these changes to the AppDelegate.swift file:

    Add import TVMLKit.
    Change the class declaration to be class AppDelegate: UIResponder, UIApplicationDelegate, TVApplicationControllerDelegate {.
    Add the following global variable to your class: var appController: TVApplicationController?
    Modify application:didfinishLaunchingWithOptions: according to the code found in the listing below:

    The code in the above example loads a JavaScript file which then loads a TVML page and displays it in the simulator or on a television screen if a new Apple TV is connected to your computer. For more information about JavaScript classes, visit That is all for now, As mentioned above if you are familiar with iOS frameworks, networking and terminology , it will be easy to develop a tvOS app.

    We have created a small demo of a youtube player for the same.

    Kindly click on the below gitHub link to get it.


    Our iOS developers are always up to date with latest trends and releases in iOS app development. You can choose our iPhone app developers from a pool of talents on-board and hire for your business needs and we will get you an outstanding iOS application. Our Apple Tv developers worked and developed Apple Tv apps for some of the world’s most knowing brands. Delivering high-performance solution in Apple tv app development makes special space for Manektech in the market of tvos app development.

    About Author

    Manektech Team

    Nikhil Solanki

    Mobile Lead

    Nikhil Solanki has 10+ years of experience in Mobile App Development and currently works as the Mobile Lead at ManekTechworked. He is an experienced Mobile lead with a demonstrated history of working in Mobile's information technology and services industry. 

    Subscribe to Our Newsletter!

    Join us to stay updated with our latest blog updates, marketing tips, service tips, trends, news and announcements!

    Areas we serve


    4100 NW Loop 410, Suite 200, San Antonio, Texas, USA 78229


    7 Artisan Place Harrow, HA3 5DS


    4th Floor, Timber Point, Prahaladnagar Road, Ahmedabad, Gujarat - 380015


    Franz-Joseph-Strasse, 11,Munich, 80801, Germany