AbemaTV (iOS) で使われているライブラリをまとめてみた

  • 310
    いいね
  • 2
    コメント

近頃よく聞く AbemaTV をインストールしてみたら使い心地が良かったので、使われているライブラリを自分用にまとめてみた。

  • 英語/技術の理解が微妙なので間違いあったら教えてください
  • 本記事中のサンプルコード/gifは全てリンク先のものです

UI 系

AttributedLabel

使いやすく(UILabel より) 早い Labelっぽい。
デモを見る限りテキストの alignment が便利そう。

Cartography

AutoLayout 用ライブラリ。
同様のライブラリとして SwiftAutoLayout というのもあるみたい。

Cheetah

アニメーション用ライブラリ。
必要な記述が短く直感的。

// Move to 100px right
box.cheetah.move(100, 0).run()

ColorAdjuster

HBS, RGB とグラデーションの色指定が簡単にできそう。
特にグラデーションは普通どうやるんだろう。

NavigationNotice

上から出る通知。上にシュッてやって引っ込める。

SpringIndicator

マテリアルデザインな indicator。
PullToRefresh (引っ張って更新)にも使える。

InfiniteView

@cjwirth 氏から コメントで情報いただきました:ok_woman:

これは、https://github.com/KyoheiG3/PagingView の進化したバージョンです。
同じコンテンツをループで表示させます。

便利/操作系

CryptoSwift

Swift で暗号化...?(知識不足)

Device

デバイスの種類とスクリーンサイズを簡潔な記述で取得。

KeyChainAccess

Kishikawa Katsumi 氏による KeyChain を扱うためのライブラリ。
Touch ID も使える。

Siren

アプリの新しいバージョンが出たら通知して AppStore へ促す。

SwiftDate

NSDate の取得/計算/判定を簡単にするライブラリ。

// Create a date at 14:00 on XMas Day
let date2 = NSDate(year: 2015, month: 12, day: 25, hour: 14)

通信系

Kingfisher

画像キャッシュライブラリ。
SDWebImage は聞いたことあるけど 他にも Kingfisher 含め Haneke, HanekeSwift などあるらしい。

ReachabilitySwift

Apple 公式の通信ライブラリ Reachability に代わるもの

ProtocolBuffers-Swift

@cjwirth 氏から コメントで情報いただきました:ok_woman:

3.0.0 のタグを使っています。
iOSアプリはよく、通信してJSONデータを送ったり、受けたりしますよね?
AbemaTVは JSON じゃなくて、 Protocol Buffers を使っています。

分析系

Crashlytics

(上記記事より)

Crashlytics とは、モバイルアプリのクラッシュ統計サービスです。iOS アプリや Android アプリに導入することでクラッシュレポートを収集することができます。

Fabric

Twitter 社製の、アプリの配布/テストなどを自動化するためのツール。
上に書いた Crashlytics も Fabric の一部になるのかな?
(Android でも使える)

GoogleAnalytics, GoogleTagManager

割愛。

Growthbeat

グロースハックの実現をサポート. ユーザーの獲得、活性化、継続、紹介、収益の全てのフェーズを支援するツール群『Growthbeat』

サイバーエージェント関連会社(?)のシロク社製。

Quick / Nimble

@cjwirth 氏から コメントで情報いただきました:ok_woman:

あと、テストのため、Quick / Nimble を使っていますが、それはもちろんリリースビルドに入りませんね!

テスト用のフレームワークらしいけど正直テストのことはよく分からない。
Quick と Nimble はそれぞれ別のリポジトリだけど、Quick は Nimble と一緒に使うものみたい。
作者は同じ modo cache

その他

NSObject-Rx, RxCocoa, RxSwift

リアクティブプログラミングをするための Rx シリーズの仲間たち。
やってみたいけど手を出せていない...!

SQlite.swift

割愛。

Swifter

Swift で書かれた Twitter framework らしい。
これがあると結局何ができるんだろう...

@cjwirth 氏から コメントで情報いただきました:ok_woman:

メインのリポジトリでは CocoaPods対応していないので、私のfork を使っています。
プルリク は結構前から送っていますが、なかなかマージしてくれないですw 😅