その後のその後

iOSエンジニア 堤 修一のブログ github.com/shu223

iOS 9、watchOS 2 技術記事のまとめ

今年はWWDC後の勉強会も多く開催され、正式リリースを前にして iOS 9、watchOS 2 の技術情報が既に多く出てきています。あとでキャッチアップしよう、と思ってたらいつの間にかかなりの記事がたまってきたので、ここらへんでいったん整理しておこうと思います。

iOS 9

App Thinning
  • App Thinning メモ - Qiita
    • 「App Thinning」「App Slicing」「On-Demand Resources」「Bitcode」など、どれが何だか区別がつかなくなる各用語について解説してくれています。
SFSafariViewController

UIWebView や WKWebView と同様に、アプリ内ブラウザとして使えるビューコントローラ。

コンテンツブロッカー(Content Blocker Extension)


LLDB


Core Location


MapKit
  • iOS 9で強化されたMapKit - Qiita
    • ピンアノテーションに任意の色をセットできるようになったりとか、コールアウトの詳細部分に任意のUIViewサブクラスをセットできるようになったりとか、見た目のカスタマイズ性が向上したようです。
    • Transit 機能の開放、Flyover のタイプ追加等、結構うれしい機能追加があります。
Audio Unit Extension


Metal
  • WWDC 2015 METAL
    • あまり見かけない、貴重な Metal 情報。WWDC 2015 の4つの Metal 関連セッションの内容をかいつまんで紹介してくれています。


ReplayKit

ReplayKit は、画面を録画するフレームワーク。ゲーム実況にしろ、ユーザビリティテスト用途にしろ、それをメインプロダクトとしてがっつり取り組んでいる企業がいくつかある分野なので、あまり個人的には直接は利用しなそうと思っていたのですが、下記スライドに載っているサンプルを見ると、導入が簡単そうなので、ちょっと試してみようかと。


その他
  • iOS9でカスタムURLスキームの遷移に失敗するときの注意点 - Qiita
    • iOS 9 ではプライバシーへの配慮により、Info.plist に LSApplicationQueriesSchemes キーに対して追加してあるカスタムURLスキームについてのみ、 `canOpenURL:` で正しく結果を返してくれるようになった
    • (Info.plist に追加してないと、対象アプリがインストールされていて遷移可能でも、canOpenURL で `NO` が返ってくる)



watchOS 2

Complication
  • 簡単!Complication!!
    • Complication の実装手順について、用語説明からダウンロードサンプルまであって、すごく丁寧に解説してくれているスライド


HealthKit
  • How to make workout app for watch os 2
    • HKWorkoutSession クラスを用いて、ワークアウト機能を利用したアプリを実装するための情報がひと通り書いてある大変ありがたいスライド


Core Graphics


その他

watchOS 1.0のアーキテクチャはいったい何のために用意されたのだろうか。ネイティブ化されるまでの半年間はいったい何のために必要だったのだろうか。Apple Watchに搭載されている一部のApple製のアプリは最初からネイティブで動作しているはずだが、はじめからその方法を解放できなかったのはなぜなのか。

    • という、開発者みんなが思った疑問についての、Bitcode やプロセッサを絡めての考察。