Saturday 24 October 2015

Exploring newly released Apple tvOS - Sept' 2015

On 9th September 2015, Apple has revealed anticipating new Apple tv with tvOS and access to developers with tvOS SDK.

It's been expected to have not very differences between iOS sdk and tvOS sdk, so iOS developers likely to start with tvOS sdk development right away.

Here are some more brief details:


New Apple tv known as Apple TV 4th generation comes with,

  • tvOS 9
  • 64-bit A8 processor
  • 32GB or 64GB of storage
  • 2GB of RAM
  • 10/100Mbps Ethernet
  • WiFi 802.11a/b/g/n/ac
  • 1080p resolution
  • HDMI
  • TV remote

For tvOS SDK development, OS X 10.10.4 & above and Xcode 7.1 & above which comes with apple tv / remote simulator inbuilt.

There are two possible ways to develop app for tvOS:
  1. Traditional / Custom Apps 
  2. Client-server / TVML Apps


Traditional / Custom Apps

  • Very much similar to iOS app development
  • Involves similar UIControls as of iOS sdk, like UITableView, UICollectionView
  • Supports Storyboard/Xib with Autolayout.

Client-server / TVML Apps

  • Includes new tvOS frameworks
  • Use of newly add languages kits, 
  1. TVML - (Television Markup Language)
  2. TVJS - Similar to traditional javascript, which will work with TVML to feed.
  3. TVMLkit - Provides a way to incorporate JavaScript and TVML elements 
 Reference:
https://developer.apple.com/library/prerelease/tvos/documentation/LanguagesUtilities/Conceptual/ATV_Template_Guide/TextboxTemplate.html#//apple_ref/doc/uid/TP40015064-CH2-SW8

Apple provides well number of predefined templates for TVML,

Reference : https://developer.apple.com/library/prerelease/tvos/documentation/LanguagesUtilities/Conceptual/ATV_Template_Guide/index.html#//apple_ref/doc/uid/TP40015064-CH41-SW1


Some new interesting elements to look are,

  • Top Shelf - For each tvOS app, Top Shelf is to be bind to highlight content of app which will be displayed on Top area of Apple TV.
  • Parallax Images - As there is no human finger touch possible, there is a way to highlight current active item with animation which will be know as Focus item. To allow this focus event parallax image is to be used which is also supported by UIImageView natively.

Similar to iOS development there are Human guidelines for tvOS, listed some of them here:

  • Single user access to app is now changed to shared experience, as multiple users going to watch same app same time. Keep this is consideration.
  • Users going to be at more far distance than iOS apps, so font sizes/color should be taken care.
  • TV remote comes with predefined buttons and touch area, so bother to use them all.

    so on. well explained here:
Reference : https://developer.apple.com/tvos/human-interface-guidelines/


Resource Limitation

There are some limitation to keep in consideration like:

  • Maximum size of an Apple TV app is limited to 200MB. So if app is expected to go beyond this limit App slicing, On demand resources will be there to cure. 
  • No persistent local cache available, so data is to be stored on backend side, iCloud or using cloudKit depending on requirement.

This's it for now. There is going to be lot more changes & updates over future of Television and tvOS.

Stay updated with Reference link: