DEV Community

Sophie @Appcircle for Appcircle.io

Posted on

BEST CONTINUOUS INTEGRATION AND CONTINUOUS DELIVERY (CI/CD-DEVOPS) TOOLS FOR MOBILE APP DEVELOPMENT

Reading Time: 5 minutes

In our previous articles, we explained "what is mobile CI/CD" and we discussed how mobile app development is different and why it requires a dedicated CI/CD (continuous integration and continuous delivery/deployment) tool.

There are many CI/CD tools in the market, which are also known as pipeline tools or DevOps tools. (Even though DevOps is a broader concept, it is being used interchangeably with CI/CD in a relaxed way.)

Why Do You Need Mobile CI/CD?

Regardless, the approach to mobile CI/CD is usually shaped by the limitations of the iOS and Android platforms. As one of the most prominent examples, iOS app builds can only be done on Xcode, which can only run on macOS, which can only be virtualized on Apple hardware.

So, unlike many other CI/CD implementations that are more or less free and open with the options to set up on any OS and hardware, you are bound to have a physical Mac device to build iOS apps or run the iOS simulator.

Top CI/CD Tools for "Non-Mobile" Stacks

Before getting on with the top mobile CI/CD tools, let's have a quick look at other best continuous integration and continous delivery/deployment tools:

  • Jenkins
  • Travis CI
  • CircleCI
  • TeamCity
  • GitLab CI
  • GitHub Actions
  • Atlassian Bamboo (BitBucket Pipelines)
  • Azure Pipelines

These tools are some of the best-in-class CI/CD tools for many stacks other than mobile app development. They have advantages and disadvantages in different areas, and some can build mobile apps; though some of these tools are unable to build iOS apps at all due to the physical Mac requirement we mentioned above.

Some of these tools also have issues building cross-platform mobile app development frameworks like React Native and Flutter since these frameworks require certain dependencies and these dependencies are not available in the build environments by default. All mobile CI/CD tools that will be listed in subsequent sections can build cross-platform mobile app projects without any additional configuration.

Moreover, mobile app code signing is a more complex process and some of these tools just use Fastlane to build mobile apps instead of using their own implementation. This in a way limits the value added to mobile CI/CD by these tools.

Top Continuous Integration and Continuous Delivery Software for Mobile App Development

Now, we can list the top mobile CI/CD tools that are specifically used for mobile applications. As explained above, these tools are different from other CI/CD tools with their specialization on mobile app development so that things like build configuration, signing identity management and mobile app distribution can be handled with minimum effort.

As of 2020, the top mobile CI/CD tools are as follows:

Each of these tools has certain strengths and weaknesses and they excel at certain functionalities, so the best mobile CI/CD tool depends on your exact requirements.

For instance, Appcircle combines the ease of use with the flexibility of workflows and includes an in-browser emulator to run your apps built in the platform. Having an in-browser simulator/emulator makes Appcircle your best and only choice, if you don't want to use physical devices for manual testing. Similarly, if you are looking for an on-premise solution that is dedicated to mobile CI/CD, Appcircle may be the best choice.

There are so many comparison points to consider and you can find all these comparisons below.

You can find the comprehensive comparison tables for the mobile CI/CD tools here:

Compare Now

In many cases, you can just connect your repository, fetch the project settings, confirm the build configuration, and let the mobile CI/CD tool handle the rest of the processes automatically. For instance, this is a general advantage of App Center or Bitrise vs. Jenkins or Bitrise vs CircleCI. Such comparisons are also not perfect since Jenkins require the presence of a Mac; whereas these tools eliminate the need for a Mac and even enable you to select the Xcode version on the fly.

What About Other Top Mobile CI/CD Tool Alternatives?

While searching for the "best CI/CD tools for mobile apps" or while asking for "what is the best mobile CI/CD tool", you may encounter other names and in the list above, we listed the best mobile CI/CD tools for 2020 as this landscape changes very fast.

Yes, there are/were other tools, which have certain relations to these tools or defunct right now. For instance, BuddyBuild is also one of the earlier tools, but it was acquired by Apple and right now, BuddyBuild does not accept new registrations and cannot build Android apps, so the tools above are alternatives to BuddyBuild and comparisons like BuddyBuild vs Bitrise is not relevant at the moment.

TestFlight and HockeyApp were also previously available tools for iOS and Android app deployment. TestFlight was acquired by Apple and is now a part of App Store Connect; whereas HockeyApp was acquired by Microsoft and is a now part of Visual Studio App Center. For this reason, App Center vs. HockeyApp is not a correct comparison since they are the same tool or the comparison of Bitrise vs. HockeyApp is now actually Bitrise vs. App Center. Similarly, Azure Pipelines and Visual Studio App Center are both tools from Microsoft and this also indicates that there is a need for dedicated mobile CI/CD tools in the market.

There is also Codemagic for Flutter builds. It is a tool by Nevercode and have a subset of Nevercode features for Flutter, so it is not a general-purpose mobile CI/CD tool, so comparisons like Nevercode vs. Codemagic is like HockeyApp vs. App Center.

Of course, there are other tools like JIRA or Azure DevOps, but these are to be complemented with a CI/CD tool.

Fastlane as a Mobile CI/CD Tool?

Even though Fastlane helps with many stages of mobile app builds, Fastlane is not a mobile CI/CD tool by itself. For instance, a comparison like Fastlane ve Jenkins, Fastlane vs App Center, or Fastlane vs Bitrise would not be an apples-to-apples comparison since Fastlane works in conjunction with these tools.

Fastlane handles some of the complexities in the build and signing process, but it requires a CI/CD tool or some sort of a complicated manual setup of scripts for full automation from code to the binary.

For this reason, Fastlane is like a part of the mobile app development toolchain like: VS Code -> GitHub -> Jenkins -> Fastlane -> App Store Connect (Actually, establishing this toolchain can be tedious and mobile CI/CD tools simplify the setup and automation of such a toolchain.)

Most of the CI/CD tools like CircleCI, Travis or Jenkins have Fastlane integrations built-in or available officially. All mobile CI/CD tools that we will list in the next section also play well with Fastlane; though they use their own ways to build and sign apps to reduce dependency on a third-party tool.

What about Firebase and TestFlight for Mobile CI/CD?

Just like Fastlane, Firebase and TestFlight are not standalone mobile CI/CD tools. They handle app delivery/deployment and the tools listed in the next section integrate with Firebase and TestFlight for app testing distribution.

However, these tools have certain limitations (e.g. TestFlight has a tester limit of 25 without app reviews), so especially for enterprise use cases, you may require enterprise-grade tools like the Appcircle Distribute Module.

Compare Mobile CI/CD Tools

All in all, you can compare and select the most suitable mobile CI/CD tool for you with the help of comparison tables accessible from the following link:

Compare Top Mobile CI/CD Tools (2020)

Top comments (0)