Firebase has just launched App Distribution to help developers send beta testing to testers easier and it’s available for beta version this September. You can log in Firebase Console to have a look
It’s in the Quality tab
Next, install plugin firebase_app_distribution for fastlane by run this in your terminal
fastlane add_plugin firebase_app_distribution
Check that if in your Pluginfile like this
Next, install Firebase CLI by running this in your terminal
curl -sL firebase.tools | bash
Sign in your account to authorize Firebase by running
firebase login
and you can log out anytime by running with the following command line
firebase logout
You can select Yes or No if you want to allow Firebase to collect your data. For me, I choose Yes because maybe Firebase will give us some reports about my apps
Then, your browser will open this link automatically to ask your permission
Next is an important step, create a new lane in your Fastfile
You can use Gym to build your app first
lane :upload_to_firebase
#Step 1 — Build your app, my suggestion is gym #Step 2 — Upload to firebase app distribution
firebase_app_distribution(
app: “APP-ID”,
testers: “TESTER-EMAILS”, groups: “TESTER-GROUP”,
release_notes: “RELEASE-NOTE”,
firebase_cli_path: “/usr/local/bin/firebase”,
ipa_path: “IPA-PATH”
)
end
So, what’s APP-ID here
Enter Project settings in firebase console
Scroll down and you’ll see your APP-ID here
Next is TESTER-EMAILS, back to your App Distribution and select the tab Testers & Groups
If you put tester emails in your lane already, you no need to add testers again manually in firebase console, like the image below, no need to add my testers again for each builds
There’re 3 milestones to show you who:
Invited already but not accept your invitation yetAccepted your invitation but not install it yet
With TESTER-GROUP, please make sure that you use a correct group id (not a group name)
For example, I have a group name Worldwide Team, but in Fastfile I must input a group ID, as image below, we have worldwide-team
Next is RELEASE-NOTE, yeah, it’s like What’s new for this beta app?
Next is RELEASE-NOTE, yeah, it’s like What’s new for this beta app?
if you don’t know where is your firebase CLI path, you can copy this maybe the same with you
firebase_cli_path: “/usr/local/bin/firebase”
Next, IPA-PATH is a path that includes your .ipa file
Yeah, finally we can finish it as the simplest way
Now you can try to run your lane, we’ll get a message when it finishes:
I tried 2 times, and amazing, it’s really fast, just only less than a minute (27 seconds and 55 seconds) to upload builds to firebase
Now, let’s compare with Testflight
So we can see Firebase App Distribution is faster than Testflight ( 248 or 335 sec not include time for Apple to process builds)
But, with Testflight we can add new testers with a current build on Testflight and with Firebase we must add them in provisioning and must reupload the builds ( but I think it’s not usually to add new testers)
Peace!