
TvOS for Developers - strzalek
https://developer.apple.com/tvos/
======
jaimebuelta
According to the Programming Guide [1], no persistent data can be stored in
the device, everything should be in iCloud, and the maximum size of the Apps
is 200MB (at any given point, it seems, you can use on-demand resources)

This is an interesting way of trying to squeeze more apps and circumvent some
of the latests storage-related issues in iOS

[1]
[https://developer.apple.com/library/prerelease/tvos/document...](https://developer.apple.com/library/prerelease/tvos/documentation/General/Conceptual/AppleTV_PG/index.html#//apple_ref/doc/uid/TP40015241)

~~~
code_sterling
This actually concerns me, I think 400mb would have been a much more
reasonable maximum. We're not going to get a lot of good games if this isn't
increased.

~~~
elithrar
Bastion (a 2.5D isometric action RPG) on my iPhone is 1.2GB. Transistor (one
of the games they featured) is 1.84GB on the App Store for the iPhone version.

Feels like a disconnect between the docs and reality.

PS: Transistor is _fantastic_ \- that music!

~~~
pilif
The AppleTV is intended to work as an always-connected device, so apps can
reasonably be expected to download the assets as they are needed.

iOS9 adds the on demand resources feature that does exactly that.

According to
[https://developer.apple.com/library/prerelease/ios/documenta...](https://developer.apple.com/library/prerelease/ios/documentation/FileManagement/Conceptual/On_Demand_Resources_Guide/PlatformSizesforOn-
DemandResources.html#//apple_ref/doc/uid/TP40015083-CH23-SW1) you can have 2GB
of resources in use at once, for a total of 20GB overall.

~~~
onion2k
_The AppleTV is intended to work as an always-connected device, so apps can
reasonably be expected to download the assets as they are needed._

That might be what Apple think, but that certainly isn't what _users_ think.
People won't wait 30 seconds for a game to start - they'll just delete the
game and buy a different one. If too many games have long load times they'll
stop using Apple TV for games altogether. By pitching Apple TV as 'apps in the
living room' the competition stops being Netflix and starts being a
Playstation.

~~~
pilif
As far as I understand the on-demand loading, once downloaded assets do not
get pruned until the device is under memory pressure. The feature also allows
to pre-load assets in the background.

So if the developers do the right job, then that first 200 MB download
contains everything for the player to start playing. Then, before those
initial assets "run out", the additional stuff will already have been loaded
in the background.

Yes. This is going to be difficult for developers, but it's also a valuable
skill to be gained because it helps developers to keep their assets organized
and their code will be better at dealing with streaming resources, which, in
turn will open the doors for many interesting things to do in the future.

We'll see what happens - after all, when you consider a disk size of 32 or 64
GB, then obviously the current limit is purely artificial.

If developers are unable to adapt to the restrictions or if the framework
isn't good enough to the point where the end-user experience suffers, then
we'll either see the restrictions lifted or the framework improved.

These restrictions don't restrict the type of game you can make, they only
make it harder compared to a unlimited initial distribution.

(note however that if the initial download must fit in 200 MB, then the
customer experience potentially _improves_ as the time to download 200 MB is
naturally much shorter than the time required to download 20GB which is the
maximum size an app can currently have).

------
prgmatic
Does it really make more sense to create _another_ OS, rather than extending
OS X or iOS? It seems like they're doing that anyway seeing as games etc will
work "across all devices"...

~~~
madeofpalk
Apple TV has always been based on iOS, but was 'forked' a while ago and has
diverged a lot since then.

Initial reports suggested that this 'new' tvOS is based on iOS 9, which makes
sense seeing as it's using a lot of iOS API's and frameworks

~~~
savoytruffle
Recall the 1st generation Apple TV (announced in autumn 2006 and sold until
2010) was actually using a version of Mac OS X on an Intel CPU.

~~~
steckerbrett
Yes, that's an exception though. Very weird device really.

------
ThomPete
Interesting.

3rd party game controller for apple tv. Was hoping for that.

[http://www.apple.com/tv/games-and-more/](http://www.apple.com/tv/games-and-
more/)

~~~
mpg33
A little surprised apple didn't create they're own game controller...I think
it would make Apple TV even a bit more compelling overall.

~~~
duaneb
And open themselves up to be judged as a serious game player? I don't think
they want that, as someone who views the gaming community with a great deal of
disgust. Whiny, entitled children who are extremely critical.

Apple has an amazing casual market and it makes more sense to capitalize on
that.

~~~
ThomPete
I upvoted you because I dont think you deserve to be downvoted for an opinion.

Having said that do you care to elaborate on your first claim. Not sure I
understand where you are getting that from.

~~~
duaneb
This is coming from a few observations:

1\. The gaming community is one of the most critical, volatile, toxic cultures
I've ever seen. See: Gamergate. This isn't a comment on individuals, just the
collective. This is where my impression of whiny, entitled children comes
from.

2\. Apple seems quite comfortable in the casual gaming community.

3\. Coming out with their own hardware would be a commitment to gaming that
would open themselves up to actually WANTING the criticism of the gaming
community. I don't see Apple relishing this at the moment, especially after
the Apple Watch flop and the introduction of a stylus 8 years late.

------
robalfonso
My concern is the apps that are approved for this device and the speed at
which it occurs.

I've bought into the whole eco system in terms of hardware: macbook, Apple tv,
iphones, ipads etc. But I don't really care for apple radio, itunes music, or
itunes video. I use netflix and amazon and spotify. So my concern is that
those apps will be quickly available without any slow down or blocking by
Apple. I also like to stream local content which I can do easily with my ipad.
I think as long as I can get the same selection of apps I get for ios I'll be
happy, but I've seen apple make arbitrary choices before.

~~~
sciurus
Amazon doesn't support the current Apple TV or Google's Chromecast, so I doubt
they'll support the new Apple TV either. Maybe they think this is an effective
way to get people to buy a Fire TV or Fire TV Stick.

~~~
abstractwater
I don't think so. Amazon has always been about being everywhere, no matter
what devices you use. So I'd be surprised if Amazon doesn't release a (Prime)
Video app soon. And it should be ok for Apple too, since they allow an
equivalent app on iOS.

~~~
sciurus
I don't think that's true when it comes to video. Amazon only recently
released an android app for Instant Video. They didn't put it on the Google
Play store though. You have to enable installation of untrusted apps, download
the apk for the Amazon Appstore, install it, then install the Instant Video
app from Amazon's Appstore.

------
capkutay
I wonder if Apple's marketing team has a template for these releases.

"We've reimagined _____ - an innovative ______ that redefines ____."

~~~
prgmatic
followed by long pause

followed by "This is {epic|awesome|amazing|special}"

~~~
robalfonso
This is {epic|awesome|amazing|special|revolutionary|groundbreaking}"

Any others?

~~~
simonh
Johnny Mode: {Subtle|Elegant|Fusion|Materials|Accentuates|Innovative}

------
epmatsw
Disappointing it won't run on the old AppleTV, considering they're still
selling it.

~~~
rsynnott
The current hardware is ancient; it's a single-core version of the iPhone 4s
chip.

~~~
epmatsw
True. But that means that the old AppleTV is now the only hardware that Apple
is selling which has no software support. Pretty unusual, considering they're
still supporting the 4S.

~~~
thomasruns
Not everyone wants what the new ATV is offering. I have no desire for games,
more apps, siri, etc., and as such am not willing to pay > $99 for it. For how
I use it, the (soon to be) old-gen ATV is perfect and now it'll cost even
less!

~~~
veidr
It was already reduced to $69 even before today's event.

------
funkedelic_bob
Does anyone know that if we mirrored a game from our iPhone 6s would it
graphically look better than if we played it natively on the Apple TV? Seeing
as the graphical horsepower in the phone is better than what the Apple TV
offers.

~~~
cledet
AirPlay mirroring has too much latency. Using it for gaming is unbearable.

~~~
peteretep
Great way to get a high score on Flappy Bird

------
josteink
Let's hope this move from Apple forces Google to put some more effort into
marketing Android TV.

It's a good (superior?) platform, but could definitely use a little better
app-support.

~~~
dominotw
is it same as chromecast?

~~~
therealmarv
no, it's totally different approach. At Chromecast the center is your
phone/tablet and it seems for tvOS it is Siri and the remote control.

~~~
Tloewald
tvOS seems to support seamless transitions of apps across iOS devices (they
mentioned it in a game context) so it may prove to be much better than that --
e.g. watch a show on Hulu, walk into room and hand the app over to the TV and
so forth.

~~~
mmebane
Android TV devices act as Chromecast receivers, so you can do the same thing
on Android TV, at least with media player apps. However, I don't think there's
a built-in way of transitioning state for full-fledged Android apps. Samsung's
apparently been experimenting with it [1], but it's still in beta, currently
only works with a few Galaxy devices, and requires apps to integrate their
SDK. I'm interested to see what Apple's approach looks like.

[1]:
[https://play.google.com/store/apps/details?id=com.samsung.fl...](https://play.google.com/store/apps/details?id=com.samsung.flow)

------
therealmarv
Finally HDMI-CEC in their new Apple TV! And about the OS: It seems a lot of
XML and JS for tvOS.

~~~
glasshead969
UIKit apps are possible too.
[https://developer.apple.com/library/prerelease/tvos/sampleco...](https://developer.apple.com/library/prerelease/tvos/samplecode/UICatalogFortvOS/Introduction/Intro.html)

------
matthewmacleod
Very interesting to see the alternative JavaScript and XML approach to
creating apps. I guess it makes a lot of sense for the simple apps that will
be available. Good that there's still basically the whole of iOS available for
use, however.

------
rcraft
Can specific apps still block airplay? I haven't used AppleTV in a long time,
but it was crazy frustrating when certain apps restricted you from being able
to airplay to a big screen.

I'm guessing mirroring the entire screen might be a possible workaround but I
thought perhaps apps could detect this as well and shutdown.

Can anyone clarify?

~~~
numbsafari
In a lot of cases this can be due to licensing restrictions. These companies
may not have licenses to allow streaming off of the mobile app to a big
screen. It has less to do with the company and more to do with the content
licensor (who may have previously licensed the content to someone else with
exclusive rights to TV but not to mobile).

Content licensing and not technical issues are usually the reason for these
annoying practices. Blame the content owner.

------
adultSwim
"We’ve reimagined the TV experience"

ha - must have some pretty limited imaginations

------
volandovengo
Anyone understand why they didn't launch this as a chromecast like USB stick
vs. a standalone box?

Surely price point will be a big issue with adoption.

~~~
rsynnott
The Chromecast basically doesn't need to do anything except stream video.
This, on the other hand, has a reasonably hefty mobile processor (same one as
iPhone 6). Also, the Chromecast's wifi is pretty anaemic; not much room for
antennae.

------
riemannzeta
They've got webviews. But what about browsers?

And will apple bluetooth keyboards connect?

~~~
realityking
The current AppleTV can be used with a bluetooth keyboard, so it's fair to
assume this will continue to work.

~~~
iraphael
I'm waiting to see the ability to use iPhone/iPad keyboards as inputs for the
Apple TV. I think Google TV does this.

~~~
X-Istence
Download the remote app onto your iOS devices, and turn on home sharing.

Now your Apple TV will show up as a device you can control from your iOS
device or even Apple Watch.

------
finalight
was wondering if my current apple tv is upgradeable to the new OS?

my apple tv is the latest generation though (before this new one obviously)

------
snyp
Wow apple is embracing javascript

~~~
rimantas
How is this news?

~~~
jonknee
Because they don't do that for iOS, MacOS or watchOS? The last time they did
something similar was for Dashboard Widgets and that was 10 years ago.

~~~
glasshead969
Apple introduced Native JavaScript bridge for iOS in iOS 7. you can call
objective-c apis in javascript.[1]

[1][https://developer.apple.com/library/mac/documentation/AppleA...](https://developer.apple.com/library/mac/documentation/AppleApplications/Conceptual/SafariJSProgTopics/Tasks/ObjCFromJavaScript.html)

~~~
jonknee
That's not what this is about though, it's for UI layout (much like with
Dashboard). You don't call Objective-C APIs from JS inside a WebKit container,
you're actually using JS to layout the app.

Update: the docs are up and the JS framework is called TVJS,
[https://developer.apple.com/library/prerelease/tvos/document...](https://developer.apple.com/library/prerelease/tvos/documentation/TVMLJS/Reference/TVJSFrameworkReference/index.html)

~~~
draw_down
The docs say you use something called "TVML" to lay out the UI, and inside the
TVML you can have JS. I think.

~~~
jonknee
TVML for layout and TVJS for logic. TVML is just an XML schema for Apple TV
UIs and TVJS a Javascript framework to present the XML templates loaded with
your data.

If you're wanting to stream video you can build a full app with almost no
Obj-C/Swift (there's still a small shell, though probably nothing custom needs
to be here).

The XML templates are a little odd in that they're JS files (e.g.
Index.xml.js) and contain the XML as the return value of a global function
called Template.

It seems really straight forward though.

------
pibefision
Not again, not another walled gardened experience please

~~~
exelius
Show me a way to make money off a consumer experience in 2015 that isn't a
walled garden. You're either a platform or you're a feature waiting to be
integrated into a platform.

~~~
frame_perfect
Fuck making money. This is shitty.

------
frame_perfect
It's so shitty how the Raspberry Pi has been able to do the same technical
things as this for almost 3 years now with complete freedom and ease of use,
but the only thing stopping it was DRM. Now this non-innovative POS is
probably going to overtake it simply because Apple can cut a deal :/

~~~
gurkendoktor
As a developer, I wish that were true. I bought a Raspberry Pi, and just
opening a window with OpenGL in it was frustrating beyond belief. You can apt-
get install SDL2, but like most packages it hasn't been adapted to the Pi and
won't work with GLES. So you have to build it from source. And even then I
couldn't figure out how to stop keyboard input from my SDL window from leaking
into the terminal that started the game. And so on... I ended up giving the Pi
away. And that was ~a full year after it came out, I never buy things on
launch day.

In Xcode, it takes something between 5 and 10 clicks to create a working
project for OS X or iOS (with OpenGL or whatever framework you want to use).

The developer experience is a big part of what makes the Apple TV what it is.
I'm not saying it's perfect - I can't believe the App Store doesn't allow for
time trials yet - but it's really, really easy to beat the developer
experience for any other living room device.

------
datashovel
Just the other day I realized I didn't even have batteries in my TV remote
anymore. Haven't had the desire to turn my TV on in who knows how long. As a
consumer I'm not optimistic this will change anything.

~~~
TheCapn
I'm at a loss for what you're trying to say here. So you don't watch TV? Like,
in any of the possible ways that a TV could be utilized? No Cable, No
DVD/BluRay, No YouTube/Netflix hookup, no XBMC/Kodi/Plex style streaming, no
console gaming?

Sure its possible that all those options and others are not of your interests,
but then what were you expecting to change? You're obviously not the target
demographic.

~~~
datashovel
I guess just contemplating out loud whether this is a play to try to "rescue"
"TV as a commonly utilized device in the household", or if I truly am an
anomaly, and that TV is still trending well among all the new devices everyone
may choose to use these days as an alternative.

I should've thought this through though, realizing that this is a new Apple
device on a heavily "pro-apple" forum :)

~~~
peteretep
I don't watch any broadcast TV, but the large screens with HDMI connectors in
my living room and bedroom are awfully useful for watching movies on, photos,
and so on

~~~
datashovel
That's been my thinking as well. Not to put words into your mouth, but it
sounds like you would agree that TV and "computer monitor" are converging.

------
seiji
This is where HN breaks down. The branding is _explicitly_ tvOS, not TvOS (HN
used to have pedantic mods manually change all titles to make first-letter-
caps even when not relevant, not sure if it's automatic now or not).

There's actually a special unicode character you can use to begin a sentence
if your subject is lowercase:
[http://www.fileformat.info/info/unicode/char/203e/index.htm](http://www.fileformat.info/info/unicode/char/203e/index.htm)

~~~
JosephRedfern
Are you serious? HN is breaking down because someone didn't follow Apple's
brand identity when posting about a product that was launched about 2 hours
ago!?

If anything, THIS is where HN is breaking down!

~~~
seiji
Enforcing arbitrary rules breaking brand names is a bad thing. IPhones should
never be typed like that. Now we also have watchOS and tvOS.

[https://www.youtube.com/watch?v=DUAK7t3Lf8s&t=3m22s](https://www.youtube.com/watch?v=DUAK7t3Lf8s&t=3m22s)

~~~
vezzy-fnord

       site:wikipedia.org "stylized as"
    

No one but the original marketer is obligated to honor stylized brand names.

How many people have you seen type out "c|net" instead of "CNET"?

