Apple has introduced tvOS, a new OS for its Apple TV that will allow developers to create games and productivity apps.
According to Apple, tvOS's SDK will be familiar to iOS developers, since it inherits many frameworks from iOS, including CloudKit, CoreData, CoreGraphics, CoreAudio, CoreVideo, CoreLocation, UIKit and many more. It also include support for shared, multiuser experience.
tvOS will allow developers to:
- control the user interface through a remote control;
- detect gestures and button presses;
- customize an on-screen keyboard;
- work with game controllers;
- create parallax artwork.
A key role in the Apple TV user experience is played by its remote control, which includes a touch surface to detect swipes, presses, long presses. In a few countries, Apple TV Remote will also include Siri Remote, which will make it possible to control Apple TV through voice commands.
Creating apps for Apple TV is similar to creating apps for iOS, Apple say. In addition, developers will be able to create client-server apps to let multiple client apps present a consistent user interface. Client-server apps are based on standard web technologies, including HTTPS, DOM, and JavaScript, and use a custom markup language, TVML, to define the UI.
To support client-server apps, tvOS includes a few specific frameworks, such as:
- TVMLKit, that provides a way to bridge JavaScript and Apple's custom markup language TVML, to native code.
- TVMLJS, that provides an API to load TVML pages in client-server apps.
- TVServices, that allows to add top-shelf extensions to apps, which are meant to help users discover apps' content, such as audio or video, so the operating system can present it to the user.
Apple provides a catalog of TVML templates ready to use, such as a search template, a menuBar template, a listTemplate, etc.
The maximum size of an Apple TV app is limited to 200MB, and developers shall use on-demand resources in case they need more assets.
A pre-release of tvOS's SDK is available for download on Apple's web site.