iOS 8のサポートを廃止したら使いたい、iOS 9の新API
随分久しぶりの投稿となりましたが、個人的に使いたいiOS 9以降で使えるAPIをピックアップしました。
アニマネのiOS版は基本的に最新と一つ前のバージョンをサポートしていて、 バージョンごとに分岐するコードは極力使わない方針で開発しています。
iOS 10がリリースされたばかりですが、新OSよりiOS 8以降のサポートを切れることの方が嬉しかったりします。
というわけで今まで使わなかったけど、これから使っていきたいAPIを書いてみます。
UIStackView
Androidで言うところのLinearLayoutです。 iOSのStoryBoardでは横並びのレイアウトが面倒だったのですが、UIStackViewを使うと楽になります。
さらに嬉しいのが、子Viewをhiddenにした時に間を詰めてくれます。 Androidはその辺楽なのですが、iOSの場合は確保していた領域が残るので高さを0にしたりしてました。
iOS 8のサポートを切ることで積極的に使っていけます。
NSLayoutAnchor
コードでAutoLayoutを制御するのが凄く楽になります。 実例は下記が詳しいです。
AutoLayout登場初期の呪文のようなコードからすればかなり分かりやすいです。
Storyboard Reference
Storyboard Referenceの一種である、Relationship SegueがiOS 9から使えるようになります。
iOS 8ではTabBarControllerやNavigationControllerの子ViewControllerにStoryboard Referenceは使えなかったのですが、 iOS 9からは使えるようになるため、StoryBoardの整理がより一層進みます。
SFSafariViewController
既にアニマネでは部分的にiOS 9向けにSFSafariViewControllerを導入していますが、 そろそろアプリ内ブラウザはSFSafariViewControllerでもいいかなと思っています。
エッジスワイプで戻れるようになったし、Cookieが共通で使えるSFSafariViewControllerの方がユーザーには便利かと。
String Transform
文字種を変換できるAPIで、ひらがなをカタカナに、全角を半角とかできるようです。
精度は未確認ですが、文字列の正規化などに利用できそうです。
ReplayKit
画面録画機能を提供するAPIです。
アニマネでは今のところ使いみちがないのですが、 ゲーム系ならプレイ動画をSNSでシェアしてもらったりとなかなか有用なAPIと思います。
参考
今回の記事を作成するにあたり、下記をとても参考にしました。 ここには記載していないものも多く書かれているので、ぜひ参考にしてみてください。
近況
本業が忙しくてしばらくアプリ開発から遠ざかっていたのですが、 最近は少しずつ進められるようになりました。
現在iOS版アニマネの大幅な更新と、Xcode8とSwift3への対応中です。
冬までには何とかリリースしたいなあという感じで進めています。