Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
CocoaHeads SKG #5 - Introduction to tvOS
Search
CocoaHeadsSKG
June 07, 2016
Programming
0
52
CocoaHeads SKG #5 - Introduction to tvOS
The awesome @ipavelas makes a sweet introduction to tvOS
CocoaHeadsSKG
June 07, 2016
Tweet
Share
More Decks by CocoaHeadsSKG
See All by CocoaHeadsSKG
CocoaHeads SKG #10 - Migrating to Swift
cocoaheadsskg
0
45
CocoaHeads SKG #10 - Rich Push Notifications on iOS10
cocoaheadsskg
0
78
CocoaHeads SKG #9 - Protocol Oriented Programming
cocoaheadsskg
0
75
CocoaHeads SKG #8 - Application Architecture
cocoaheadsskg
0
74
CocoaHeads SKG #4 - Getting Dirty With Realm.io
cocoaheadsskg
1
93
CocoaHeads SKG #3 - iOS link Handling
cocoaheadsskg
0
90
CocoaheadsSKG #3 - Towards Continuous Delivery with Fastlane
cocoaheadsskg
0
77
CocoaheadsSKG #2 - Supporting 3D Touch on iPhone
cocoaheadsskg
0
56
CocoaheadsSKG #2 - Introduction to RxSwift
cocoaheadsskg
0
130
Other Decks in Programming
See All in Programming
開発者体験を変えるInfrastructure as Codeの新機能6選!
konokenj
4
850
Laravel標準バリデーションでできること
hmb_ok
1
330
20240301_cocone_EMゆるミートアップvol6_LT資料
cocone
0
250
TDDと今まで
kanayannet
0
110
とにかくHTTP3をライトニングに話す / Anyway, I'll talk to Lightning about HTTP3.
seike460
PRO
0
110
オープンなデータ・ソフトウェアを活用した開発
404background
0
160
htmx is fun!
codehex
2
170
Microsoft Fabricを7ヶ月使ってわかったこと
shun_oshidari
2
450
TypeScript x GraphQLで2年開発してみて
yutank34
8
4.7k
iOS / Android ネイティブ 実装アプリの Flutter 化事例
mthiroshi
0
650
PHPカンファレンス関西2024でLTとスタッフした
ohmori_yusuke
2
120
Sementic Kernelのネイティブ関数について
tomokusaba
0
780
Featured
See All Featured
Teambox: Starting and Learning
jrom
126
8.3k
Robots, Beer and Maslow
schacon
PRO
154
7.9k
ピンチをチャンスに:未来をつくるプロダクトロードマップ #pmconf2020
aki_iinuma
67
38k
Web Components: a chance to create the future
zenorocha
304
41k
The MySQL Ecosystem @ GitHub 2015
samlambert
242
12k
Creatively Recalculating Your Daily Design Routine
revolveconf
209
11k
In The Pink: A Labor of Love
frogandcode
137
21k
Fireside Chat
paigeccino
19
2.5k
Put a Button on it: Removing Barriers to Going Fast.
kastner
58
3k
Code Review Best Practice
trishagee
54
15k
Side Projects
sachag
451
41k
What's new in Ruby 2.0
geeforr
335
31k
Transcript
Intro to tvOS have they finally cracked it? @iPavleas
What is it? Apps on TV Derived from iOS New
frameworks TVML, TVJS Storage limitations New UX (Indirect input)
Frameworks Accelerate AudioToolbox AudioUnit AVFoundation AVKit CFNetwork CloudKit CoreBluetooth CoreData
CoreFoundation CoreGraphics CoreImage CoreLocation CoreMedia CoreSpotlight CoreText CoreVideo Darwin Foundation GameController GameKit GameplayKit GLKi ImageIO MachO MapKit MediaAccessibility MediaPlayer MediaToolbox Metal MetalKit MetalPerformanceShaders MobileCoreServices ModelIO OpenGLES SceneKit Security simd SpriteKit StoreKit Swift Standard Library SystemConfiguration UIKit
No Photos No AddressBook No Contacts No MessageUI No ReplayKit
No HomeKit
No WebKit
TVML XML, HTML like Templates (formTemplate, menuBarTemplate) Elements (title, img,
button)
None
None
None
TVJS JavaScript Standard DOM classes + EventListenerObject, Keyboard, NavigationDocument etc
Can exist on a server Can bridge native code with JavaScript Core
None
TVML vs Native Slower Less customisable Updates without app review
Stock apps look like TVML
NSUserDefaults (limited to 500KB) iCloud Key Value Storage (1MB per
user, 1024 keys) CloudKit Own server Limited Persistent (local) Storage
tvOS app bundle < 200MB
New UX - Siri Remote “creates a unique, intimate connection
with onscreen content” Focus Parallax images Gestures
Focus Engine UIFocusEnvironment protocol UIView, UIViewController, UIWindow, UIPresentationController prefferedFocusView
None
Focus Engine Swipe to move focus: left, right, up, down
Internal picture of app’s UI should/ didUpdateFocusInContext setNeedsFocusUpdate
Focus Engine UIFocusGuide bottomAnchor, leftAnchor etc
Gestures UITapGestureRecognizer: numberOfTaps, allowedPressTypes UILongPressGestureRecognizer: UISwipeGestureRecognizer: UIPanGestureRecognizer:
No MultiTouch
None
Existing Projects Standalone binary Universal purchase Share code with existing
iOS apps Add new target New storyboards (1920x1080, scale 1x) TestFlight
Thank you!