Simplify your code signing setup

Manage your certificates, provisioning profiles and keystores in an easy and secure way.

Here’s how

One tool for signing Android and iOS apps

One tool for signing Android and iOS apps

Manage your code signing files in Codemagic and effortlessly create a signed .aab, .apk or .ipa archive for on-device testing or release.

Apple Developer Portal integration

Apple Developer Portal integration

Upload your code signing files or have Codemagic fetch or create certificates and provisioning profiles using App Store Connect API keys.

Security

Security

Whether you’re an in-house developer or outsource the development work, securely store your secrets and code signing identities in Codemagic without exposing them to everyone.

Fastlane

Fastlane

If you already use Fastlane for building, signing and releasing your applications, you can run the same scripts on Codemagic with ease as fastlane is preinstalled on our build machines.

It’s easy to get started

Automatic signing
Manual signing
Manage identities
Identities overview
Automatic signing

Automatically create a signing certificate and a provisioning profile for your application.

Manual signing

Using Push Notifications? Simply upload additional provisioning profiles if your app contains app extensions.

Manage identities

Upload and manage all code signing files in one place and use them across multiple applications.

Identities overview

Get full overview including expiration date and linked certificates in one place.

Have complete control over code signing with codemagic.yaml

  • Fetch signing files with Codemagic CLI tools

    Use IOS_APP_STORE if you publish to TestFlight or App Store, and IOS_APP_ADHOC for Firebase App Distribution.

  • Automatically update Xcode project settings

    Set up code signing settings on specified Xcode projects to assign matching provisioning profiles to build targets.

  • Get signed build artifacts

    With Codemagic, it is possible to automate building, code signing and distribution for native, Flutter, React Native and other frameworks.

  • Using Fastlane

    You can run Fastlane scripts in Codemagic the same way as locally.

  • workflows:
      sample-workflow:
        scripts:
          - keychain initialize
          - |
            set -e
            BUNDLE_ID=$(xcode-project detect-bundle-id)
            app-store-connect fetch-signing-files $BUNDLE_ID --type IOS_APP_DEVELOPMENT --create
         - keychain add-certificates
    
                        
  • workflows:
      sample-workflow:
        scripts:
          - keychain initialize
          - |
            set -e
            BUNDLE_ID=$(xcode-project detect-bundle-id)
            app-store-connect fetch-signing-files $BUNDLE_ID --type IOS_APP_DEVELOPMENT --create
         - keychain add-certificates
          - xcode-project use-profiles
    
                        
  • workflows:
      sample-workflow:
        scripts:
          - keychain initialize
          - |
            set -e
            BUNDLE_ID=$(xcode-project detect-bundle-id)
            app-store-connect fetch-signing-files $BUNDLE_ID --type IOS_APP_DEVELOPMENT --create
         - keychain add-certificates
          - xcode-project use-profiles
          - xcode-project build-ipa --workspace "$XCODE_WORKSPACE" --scheme "$XCODE_SCHEME"
    
                        
  • workflows:
      sample-workflow:
        scripts:
          - bundle install
          - bundle exec fastlane beta
    
                        

Continue your Codemagic discovery

See what else Codemagic can do for your continuous integration and continuous delivery needs.