Using Fastlane to expedite Application Development

What is Fastlane?

Fastlane is a tool for automating app builds and distribution for both iOS and Android. By using a combination of lanes and actions, developers can simply build, sign and distribute their apps to TestFlight, App Store and Google Play. Coupled with build settings or xxconfig files, for iOS, lanes and actions can be simply configured to build the app for the environment specified. The tool can also be configured to take screenshots of the app on varying devices and screen sizes via UI tests as required for App Store and Google Play submissions.

How to use it (for iOS)?

Firstly, the project and environment must be set up and Fastlane installed. The simple reference documentation outlines this process for the developer on their machine, be it Windows, Linux or macOS.

Once installed, lanes can be defined and filled with actions or other lanes as required. For example, the following snippet retrieves the signing certificates and profiles, builds the app for a specific scheme and uploads to TestFlight before posting a message to Slack to notify it is complete.

lane :beta do
sync_code_signing(type: “appstore”)
build_app(scheme: “MyApp”)
upload_to_testflight
slack(message: “Successfully distributed a new beta build”)
end

Custom actions can be created to extend the functionality of Fastlane, but these must be included with your repository to be accessible. Alternatively, if they could be useful for the community, the action could be submitted to Fastlane for redistribution.

Plugins are available for Fastlane to offer functionality such as versioning, badges on app icons, distributing IPAs to BrowserStack for testing, and reading and writing to xcconfig files. Custom plugins can also be created and used locally or published via Rubygems or Github

Power Pages, an upcoming release in the Microsoft Power Platform suite, makes building beautiful websites a breeze. This low-code solution allows businesses to create secure, front-facing websites with minimal web design experience. As part of the Power Platform suite, it integrates nicely with other power utilities and can leverage Microsoft Dataverse to collect and display business data.

Our use-case

For one of our clients, we use Fastlane on their iOS apps to provide simple, one-line builds and distribution either on the development machine or utilizing Azure Pipelines. Fastlane allows us to configure shared or environment-specific lanes and actions for each environment in our ecosystem.

Utilizing Fastlane & Pipelines, we can build, run unit tests, sign IPAs and publish these as artifacts which our deployment Pipelines can consume to distribute to either TestFlight or the App Store.

Version & build id increments are automated, and building, testing and distributing the clients’ apps via Fastlane and Azure Pipelines has shaved hours off of a manual approach.

Thank you for taking the time to read this case study! We hope it provided valuable insights and inspiration for your own projects. If you enjoyed this content, be sure to check out our recent works for more case studies and blog posts on similar topics. Don’t forget to subscribe to our newsletter for the latest updates and exclusive content.

discover more

Enabling Bitlocker

Enabling BitLocker Encryption with Microsoft Intune 

Enabling BitLocker Encryption with Microsoft Intune   February 15, 2024 In today’s data-driven world, safeguarding sensitive information is paramount, especially with the increase in remote work following the pandemic and the…

Primary Constructors

Primary Constructors (C# 12 Syntactic Sugar): A Guide 

Primary Constructors (C# 12 Syntactic Sugar): A Guide  February 8, 2024 With the introduction of .Net8 and C#12 in November of 2023, there were many significant changes to .NET and…

Software Development Trends

5 Software Development Trends for 2024 

5 Software Development Trends for 2024    February 1, 2024 In the last few years, we have witnessed unprecedented changes and advancements in technology, which have impacted the world of software…

Let’s build something amazing together

From concept to handoff, we’d love to learn more about what you are working on.
Send us a message below or call us at 1-800-989-6022.