(Part 1 of 5)
This tutorial is for iOS developers, who are willing to develop apps for the tvOS platform.
Apple has provided developers two ways to develop tvOS apps:
- Native Apps: These types of applications are made using native technologies like Objective-C, Swift or even Swift UI. These applications use many commonly used iOS frameworks.
Both ways are a completely valid way to make apps, it depends what you’re trying to do. In this tutorial, we are going to create a simple tvOS app that streams videos using TVML Kit.
What is a TVML app?
An application developed with the help of TVML, TVJS, and TVML Kit is known as an TVML app. If these abbreviations sound foreign to you, don’t fret because they should. Here’s what they are:
- TVML is Apple’s XML and stands for “Television Markup Language”.
What is a TVML template ?
Apple’s Television Markup Language (TVML) is an XML based language that is used to display information on the screen. TVML templates define what elements can be used and in what order and are designed to display information in a specific way.
- Alert Template
- Catalog Template
- Form Template
- List Template
Click here to view all the Apple’s pre-made templates.
For this tutorial, we would be building a native video streaming app using TVML Kit, TVML and TVJS.
Before we start, let’s have a look at the resulting app.
To make this tutorial easier to follow, this tutorial is designed to be Architecture-agnostic i.e. it will only focus on the core concepts rather than following any specific architecture like MVP, MVVM etc.
Entire source code of this tutorial is hosted on the following Git repository:
NOTE : When you download and run this project you will get the above error screen, that is because your local server is not active/running when you build this project, to clear this error you have to create a local server from your system, which can be done with the help of python3. Open a terminal at the “Sample TVML” folder and run the following command(this command differs as per your python versions, for python3 use the following command).
This tutorial will cover the following topics:
- Getting started with TVMLKit
- Crafting the TVML
- Building the Catalog Template and streaming videos
Now that we know the requirements, let’s begin the first topic on the next part of this blog.