はじめに
fabricで公開されているfastlaneのセットアップ手順だけではin-houseなiOSアプリをCrashlytics Beta Distributionできなかったので、手順をまとめました。
前提条件
- 対象のアプリがXcodeからin-houseビルドできること
- Product->Archive->Export->Save for Enterprise Deploymentで成功すること
- fabricのアカウントを取得していること
事前準備
Crashlyticsのインストール
Crashlytics Beta Distributionだけしか使わない場合でも、Crashlyticsのインストールが必要です。
(未インストールだと、fastlaneが途中でコケる)
公式の手順通りにインストールして下さい。
その後、一度アプリをビルドしてRunして下さい。
(このタイミングで、Fabricにアプリの情報が送信される模様)
Provisioning Profileの作成と指定
fastlaneでビルドするには、Automatically manage signingをオフにして手動でProvisioning Profileの指定が必要です。
まず、Apple Developer ConsoleからDevelopmentとDistribution(In House)両方のProvisioning Profileを作成し、
fastlaneの公式ドキュメントを参考にXcodeからProvisioning Profileを指定して下さい。
配布先端末でのメールアカウントセットアップ
Crashlyticsからのメール受信に必要です。
自分の場合、 iCloudメールを使いました。
fastlaneのセットアップ
まず、冒頭で紹介したfastlaneのセットアップ手順通りにセットアップします。
その後、Fastfileを開いて下記を参考にscheme、workspace、methodを指定します。
# More documentation about how to customize your build
# can be found here:
# https://docs.fastlane.tools
fastlane_version "1.109.0"
# This value helps us track success metrics for Fastfiles
# we automatically generate. Feel free to remove this line
# once you get things running smoothly!
generated_fastfile_id "d92ef24f-4e9d-452b-a5d1-a2c0e7a86e76"
default_platform :ios
# Fastfile actions accept additional configuration, but
# don't worry, fastlane will prompt you for required
# info which you can add here later
lane :beta do
# build your iOS app
gym(
scheme: "hoge", # スキーム名
workspace: "hoge/hoge.xcworkspace", # ワークスペースのパス
export_method: "enterprise" # "Save for Enterprise Deployment"の指定
)
# upload to Beta by Crashlytics
crashlytics(
api_token: "your api_token",
build_secret: "your build_secret"
)
end
これでセットアップ完了です!
ビルドからアプリの起動まで
ビルドしてCrashlytics Betaにアップロード
下記のコマンド一発です。
$ fastlane beta
アプリの配布とインストール
Fabricのホームから配布したいアプリを選択後、左のメニューからBetaを選択し、「Add Testers」で配布先端末が受信できるメールアドレスを入力します。
その後、クラスメソッド様の[iOS][Android] Crashlytics で配信されたベータ版アプリのインストール手順のまとめを参考にインストールします。
アプリの起動
in-houseビルドなアプリの場合、iOSの設定画面から開発元のプロファイルを信頼しないと起動できません。
カスタムのエンタープライズ App を iOS にインストールする際のガイドラインを参考に、開発元のプロファイルを信頼して下さい。