狠狠撸
Submit Search
watchOS 2 新機能の細かい話
?
29 likes
?
23,862 views
Shuichi Tsutsumi
Follow
watchOS-2-Sampler 実装にあたって気付いた細かい諸々について(実装上の注意点、調べてわかったこと etc..)
Read less
Read more
1 of 68
Download now
Download to read offline
More Related Content
watchOS 2 新機能の細かい話
1.
watchOS 2 新機能の細かい話 堤
修一 @shu223 2015.6.16 potato tips #18
2.
? 堤 修一(つつみ
しゅういち) ? iOS専業フリーランス ? ブログ『Over&Out その後』 ? 著書? 『iOS×BLE?Core Bluetoothプログラミング』? 『iOSアプリ開発 達人のレシピ100』 自己紹介
3.
お手伝いしたプロダクト(BLE関連) Music for the
Deaf
4.
iOS Sampler シリーズ
5.
iOS Sampler シリーズ ?
颈翱厂新机能のサンプルコード集
6.
iOS Sampler シリーズ ?
颈翱厂新机能のサンプルコード集
7.
iOS Sampler シリーズ ?
颈翱厂新机能のサンプルコード集 ? 累計5,000スター超!
8.
iOS Sampler シリーズ ?
颈翱厂新机能のサンプルコード集 ? 累計5,000スター超! ? github.com/shu223
9.
watchOS-2-Sampler
10.
watchOS-2-Sampler ? watchOS 2
新機能の サンプルコード集
11.
watchOS-2-Sampler ? watchOS 2
新機能の サンプルコード集 ? 現在の収録サンプル: 14種類 - Accelerometer - Gyroscope - Pedometer - Heart Rate - Table Animations - Animated Properties - Audio Rec & Play - Picker Styles - Taptic Engine - Alert - Animation with Digital Crown - Interactive Messaging - Open System URL - Audio File Player
12.
今日话すこと
13.
今日话すこと ? watchOS-2-Sampler 実装にあたって気付いた細かい 諸々について
14.
今日话すこと ? watchOS-2-Sampler 実装にあたって気付いた細かい 諸々について -
新機能やそのサンプルをひとつひとつ紹介するのではなく、実 装上の注意点とか、調べてわかったこととか
15.
今日话すこと ? watchOS-2-Sampler 実装にあたって気付いた細かい 諸々について -
新機能やそのサンプルをひとつひとつ紹介するのではなく、実 装上の注意点とか、調べてわかったこととか - 全部で5つ
16.
今日话すこと ? watchOS-2-Sampler 実装にあたって気付いた細かい 諸々について -
新機能やそのサンプルをひとつひとつ紹介するのではなく、実 装上の注意点とか、調べてわかったこととか - 全部で5つ ※用いている画像はすべてAppleによる公開ドキュメント (WWDCセッション動画やスライドetc..)からのものです
17.
1/5 2つのアセットカタログの 使い分け
18.
watchOS 2 から、ネイティブ動作するようになった!
19.
watchOS 2 から、ネイティブ動作するようになった! →
Extension のコードもウォッチ側で実行される
20.
watchOS 2 から、ネイティブ動作するようになった! →
Extension のコードもウォッチ側で実行される → Watch Extension の Asset Catalog も、Watch App の Asset Catalog もウォッチ側にある
21.
watchOS 2 から、ネイティブ動作するようになった! →
Extension のコードもウォッチ側で実行される → Watch Extension の Asset Catalog も、Watch App の Asset Catalog もウォッチ側にある → どっちに置いてもいいんじゃ????
22.
watchOS 2 から、ネイティブ動作するようになった! →
Extension のコードもウォッチ側で実行される → Watch Extension の Asset Catalog も、Watch App の Asset Catalog もウォッチ側にある → どっちに置いてもいいんじゃ???? → そんなことはない!
23.
Watch Extension 侧リソースを利用するケース ?
wathOS-2-Sampler の Coordinated Animations サンプル
24.
Watch Extension 侧リソースを利用するケース ?
wathOS-2-Sampler の Coordinated Animations サンプル
25.
Watch App 侧リソースを利用するケース ?
wathOS-2-Sampler の Picker Styles サンプル
26.
Watch App 侧リソースを利用するケース ?
wathOS-2-Sampler の Picker Styles サンプル
27.
? Watch App
侧リソースを利用
28.
? Watch App
侧リソースを利用 - WKImage や WKInterfaceImage 等の WatchKit のクラスから name で参照する場合
29.
? Watch App
侧リソースを利用 - WKImage や WKInterfaceImage 等の WatchKit のクラスから name で参照する場合 - IB からセットする場合
30.
? Watch App
侧リソースを利用 - WKImage や WKInterfaceImage 等の WatchKit のクラスから name で参照する場合 - IB からセットする場合 - (名前をセットしたものがプレビューされてるだけなので、結局は上と同じ)
31.
? Watch App
侧リソースを利用 - WKImage や WKInterfaceImage 等の WatchKit のクラスから name で参照する場合 - IB からセットする場合 - (名前をセットしたものがプレビューされてるだけなので、結局は上と同じ) ? Watch Extension 侧リソースを利用
32.
? Watch App
侧リソースを利用 - WKImage や WKInterfaceImage 等の WatchKit のクラスから name で参照する場合 - IB からセットする場合 - (名前をセットしたものがプレビューされてるだけなので、結局は上と同じ) ? Watch Extension 侧リソースを利用 - UIImage 等の WatchKit 以外のクラスから参照する場合
33.
? Watch App
侧リソースを利用 - WKImage や WKInterfaceImage 等の WatchKit のクラスから name で参照する場合 - IB からセットする場合 - (名前をセットしたものがプレビューされてるだけなので、結局は上と同じ) ? Watch Extension 侧リソースを利用 - UIImage 等の WatchKit 以外のクラスから参照する場合 ? 参考
34.
? Watch App
侧リソースを利用 - WKImage や WKInterfaceImage 等の WatchKit のクラスから name で参照する場合 - IB からセットする場合 - (名前をセットしたものがプレビューされてるだけなので、結局は上と同じ) ? Watch Extension 侧リソースを利用 - UIImage 等の WatchKit 以外のクラスから参照する場合 ? 参考 - WWDC15 セッション 207“WatchKit in depth Part1”スライドp40~
35.
2/5 メディアデータの 保存場所
36.
新たに追加されたマイク録音鲍滨
37.
新たに追加されたマイク録音鲍滨 ? presentAudioRecordingContr ollerWithOutputURL:preset: maximumDuration:actionTitl e:completion: を呼ぶ
38.
新たに追加されたマイク録音鲍滨 ? presentAudioRecordingContr ollerWithOutputURL:preset: maximumDuration:actionTitl e:completion: を呼ぶ ?
第1引数にオーディオファイル 出力先の NSURL オブジェクト を渡す
39.
新たに追加されたマイク録音鲍滨 ? presentAudioRecordingContr ollerWithOutputURL:preset: maximumDuration:actionTitl e:completion: を呼ぶ ?
第1引数にオーディオファイル 出力先の NSURL オブジェクト を渡す → documents 配下のパスを渡す
40.
新たに追加されたマイク録音鲍滨 ? presentAudioRecordingContr ollerWithOutputURL:preset: maximumDuration:actionTitl e:completion: を呼ぶ ?
第1引数にオーディオファイル 出力先の NSURL オブジェクト を渡す → documents 配下のパスを渡す → シミュレータでは動作するの に、実機で動作しない!
41.
Must use a
shared container
42.
? って WWDC15
セッション207“WatchKit in depth part1”スライド p59 に 書いてある Must use a shared container
43.
? って WWDC15
セッション207“WatchKit in depth part1”スライド p59 に 書いてある ? “WatchKitAudioRecorder”の実装もそうなってる Must use a shared container
44.
? って WWDC15
セッション207“WatchKit in depth part1”スライド p59 に 書いてある ? “WatchKitAudioRecorder”の実装もそうなってる ? Watch の Extension と App で“App Groups”を有効にする Must use a shared container
45.
? って WWDC15
セッション207“WatchKit in depth part1”スライド p59 に 書いてある ? “WatchKitAudioRecorder”の実装もそうなってる ? Watch の Extension と App で“App Groups”を有効にする ? なぜ?(メディアリソースは Extension と App で共用するから?) Must use a shared container
46.
3/5 WKAudioFilePlayer
47.
? 要ウォッチとの Bluetooth
Headset ペアリング
48.
? 要ウォッチとの Bluetooth
Headset ペアリング - ウォッチ側スピーカーからのオーディオファイル再生は presentMediaPlayerControllerWithURL:options:completion: を利用しないとできない?
49.
? 要ウォッチとの Bluetooth
Headset ペアリング - ウォッチ側スピーカーからのオーディオファイル再生は presentMediaPlayerControllerWithURL:options:completion: を利用しないとできない? ? WKAudioFilePlayerItem: でオブジェクト生成直後に play し ようとしてはいけない
50.
? 要ウォッチとの Bluetooth
Headset ペアリング - ウォッチ側スピーカーからのオーディオファイル再生は presentMediaPlayerControllerWithURL:options:completion: を利用しないとできない? ? WKAudioFilePlayerItem: でオブジェクト生成直後に play し ようとしてはいけない
51.
? 要ウォッチとの Bluetooth
Headset ペアリング - ウォッチ側スピーカーからのオーディオファイル再生は presentMediaPlayerControllerWithURL:options:completion: を利用しないとできない? ? WKAudioFilePlayerItem: でオブジェクト生成直後に play し ようとしてはいけない ? status プロパティが ReadyToPlay になれば再生OK
52.
4/5 ウォッチ側 Bluetooth の (直接)利用
53.
? watchOS Developer
Library には Core Bluetooth のド キュメントはない
54.
? watchOS Developer
Library には Core Bluetooth のド キュメントはない ? ドキュメントは置き忘れてるだけかもしれない
55.
? watchOS Developer
Library には Core Bluetooth のド キュメントはない ? ドキュメントは置き忘れてるだけかもしれない ? ということで「念のため」 Watch Extension 側の コードで import してみた
56.
? watchOS Developer
Library には Core Bluetooth のド キュメントはない ? ドキュメントは置き忘れてるだけかもしれない ? ということで「念のため」 Watch Extension 側の コードで import してみた
57.
? watchOS Developer
Library には Core Bluetooth のド キュメントはない ? ドキュメントは置き忘れてるだけかもしれない ? ということで「念のため」 Watch Extension 側の コードで import してみた ? (やはり)ダメでした???
58.
5/5 Watch Connectivity のメッセージ送信可否の条件
59.
? Watch Connectivity
60.
? Watch Connectivity -
Phone - Watch 間で相互にメッセージやデータを 送れる
61.
? Watch Connectivity -
Phone - Watch 間で相互にメッセージやデータを 送れる - 前からあった openParent~ は Watch → Phone だ け(ただし Phone から Reply を返すことは可)
62.
? Watch Connectivity -
Phone - Watch 間で相互にメッセージやデータを 送れる - 前からあった openParent~ は Watch → Phone だ け(ただし Phone から Reply を返すことは可) ? メッセージ送信可否のチェック
63.
Reachable なケース その1: 両者共にフォアグラウンド
64.
Reachable なケース その2: iOS側だけバックグラウンド
65.
? 要は、Watch App
がバックグラウンドのときは iPhone 側からのメッセージを受け取れない
66.
? 要は、Watch App
がバックグラウンドのときは iPhone 側からのメッセージを受け取れない ? あくまで WCSession の reachable の話。Application context や User info transfer, File transfer を使えば Wacth App がバックグラウンドのときも Phone → Watch へ情 報を送れるかも(後日試してサンプル追加予定)
67.
? 要は、Watch App
がバックグラウンドのときは iPhone 側からのメッセージを受け取れない ? あくまで WCSession の reachable の話。Application context や User info transfer, File transfer を使えば Wacth App がバックグラウンドのときも Phone → Watch へ情 報を送れるかも(後日試してサンプル追加予定) ? 参考:WWDC15 セッション713? “Introducing Watch Connectivity”
68.
watchOS-2-Sampler GitHub: shu223/watchOS-2-Sampler Blog: watchOS
2 の新機能のサンプルコード集『watchOS-2-Sampler』 - Accelerometer - Gyroscope - Pedometer - Heart Rate - Table Animations - Animated Properties - Audio Rec & Play - Picker Styles - Taptic Engine - Alert - Animation with Digital Crown - Interactive Messaging - Open System URL - Audio File Player
Download now