Upload
toyship
View
1.956
Download
0
Embed Size (px)
Citation preview
My#First#tvOS2015/10/13
@TachibanaKaoru
自己紹介渋谷のVOYAGE'GROUPでiOSエンジニアをしています。Twi$er/Vainglory/:/@TachibanaKaoruBlog/:/h$p://www.toyship.org/
朝時間.jpというアプリをだしてます。
Apple%TVとは
• AppleがリリースしているTV接続用セットトップボックス
• 2007年から販売しているが、2015年10月下旬発売予定の第四世代-Apple-TVで、はじめてサードパーティ製のアプリが搭載できるように
Apple%TVとは
64#bit'A8'processor32GB'or'64GB'Storage2GB'RAM10/100Mbps'EthernetWiFi'802.11a/b/g/n/acNew'Siri'Remote'/'Apple'TV'Remote
tvOSとは• 第四世代"Apple"TVのOS
• iOS9.0をベースとした独自OS
• Xcode7.1から開発ターゲットとなる
tvOS%アプリ
• Apple&TV内のApp&Storeで配布される。
• watchOS&Appと違い、iOS&App部分を必要とせず、tvOSアプリ単体でリリース。
• 現時点ではApp&Storeは開始されていないが、審査は開始されている。
• シミュレーターでの安定した動作確認がある程度までは可能。
tvOSアプリ開発の特徴• 独自UX
• 実装方法の選択
• 厳しいリソース制限
tvOSアプリ開発の特徴%&%独自UX
• いわゆる10$feet$UI
• ユーザー入力として、タッチイベントが使えない。
• フォーカスを移動させ、pressイベントを取得。
• UIFocusEnvironmentプロトコルに対応したUIControl(UIView、UIWindowなど)のフォーカスイベントはシステムで管理されるが、独自UIControlを作った場合のフォーカス管理を実装する必要がある。
tvOSアプリ開発の特徴%&%独自UX
• 文字入力が極端に難しい。
• 基本的に、画面上のソフトウェアキーボードで入力
• watch'OSと同様に、文字入力を用いないUXとする必要がある
tvOSアプリ開発の特徴%&%独自UX
• アプリの「ユーザー」がアプリを起動した人ではない可能性を考える。
• 永続性データの保存方法
• ソーシャル機能で使うアカウント
tvOSアプリ開発の特徴%&%独自UX
アプリアイコンやアプリ内画像でのパララックス効果
tvOSアプリ開発の特徴%&%独自UX
• パララックス効果は1画像表示エリアにつき、3つの画像レイヤーを設定することで作成する。
• リモコン上部のタッチを使わないと確認できないので、シミュレーター上で再現することは不可。
• ただし、パララックス確認用Viewerアプリがリリースされている。
tvOSアプリ開発の特徴%&%実装方法の選択
大きく分けて二つの実装方法がある。• UIKitによる実装
• TVJS/TVMLによる実装
tvOSアプリ開発の特徴%&%実装方法の選択• UIKitによる実装
• iOSアプリとほぼ同様の実装方法となる。
• UIAlertController、UICollec1onViewControllerなどもポーティングされている。
tvOSアプリ開発の特徴%&%実装方法の選択
• TVJS/TVMLによる実装
• アプリの実行部分をTVJS(~Java-
Script)とTVML(Apple-TV-Markup-
Language)で記述し、アプリ内ではなくサーバーに配置する。AppDelegateではそれをよびだすだけ。
• 後述するリソース制限を考慮すると、Appleはこちらを推奨しているの
TVML%Example
<document> <alertTemplate> <title>Update to premium</title> <description>Go ad free by updating to the premium version</description> <button> <text>Update Now</text> </button> <button> <text>Cancel</text> </button> </alertTemplate></document>
tvOSアプリ開発の特徴%&%厳しいリソース制限
セットトップボックスであるというデバイスの性質上、iOSやMacにくらべてアプリで使う子ことができるリソースの制限が厳しい。'(ローカル領域へのデータ保存は不可。(永続化にはiCloudを利用)'(アプリの配布サイズは200MBに制限。((On(demand(Resources(を利用)
tvOSアプリ開発の特徴%&%その他• tvOSとiOSとの差異があるため、iOS用の外部ライブラリがそのまま使えない可能性がある。'
• UIライブラリなどが難しそう
まとめ• Apple&TV&での開発は、今までの&Mac,iOS,Apple&watchのどれとも違ったUXを考慮する必要がある。
• UXについては、可能であれば、実機を使って検討するのがいいでしょう。
• UIKitでの実装よりTVJS/TVMLによる実装の方が推奨されている(かもしれない)