Firestoreを使っているFlutterアプリのiOSビルドを少しだけ早くする
はじめに
Flutter開発をしているとiOSのビルドが遅いことは日常茶飯事だが、Firestoreを使い始めるともっとビルドが遅くなってしまう。これを改善したくて調べてみると以下のツールを使うことでビルド時間が改善できるようだった。
READMEを読むと、FirestoreのiOS SDKは50万行のC++コードがあり、このコンパイルに時間がかかっているとのこと。上記のツールでは、プリコンパイルされたFirestoreのiOS SDK xcframework
ファイルを提供してくれるので、その分ビルドが早くなるようだ。
導入方法
導入方法は簡単で、ios/Podfile
内にあるtarget 'Runner'
ブロックに以下の行を追加するだけのようだ。
target 'Runner' do
# 以下のコードを追加
pod 'FirebaseFirestore', :git => 'https://github.com/invertase/firestore-ios-sdk-frameworks.git', :tag => '9.4.0'
use_frameworks!
use_modular_headers!
flutter_install_all_ios_pods File.dirname(File.realpath(__FILE__))
end
:tag => '9.4.0'
の部分は使っているFirebase/Firestore
に合わせて適宜変更する必要がある。バージョンが合っていないとビルドでエラーが出てくるので、そこに出てくるバージョンを指定するのでも良い。
一応、サポートされているFirebase iOS SDKバージョンはREADMEに記載されている。
おわり
自分で試してみた結果、CI上でXcodeのビルドが600秒から450秒になっていた。
タイトルの通り少しだけ
早くなった。