Convert iOS apps to Android

Mutata is the first framework that enables you to run Swift iOS applications on Android devices without rewriting your code.
Just Mutata your Xcode project and release it directly to Google Play Store.

video

Check out our Showcase app

The Mutata Showcase app is an iOS application built using Xcode
that demonstrates how each iOS class/element and property is displayed in the Android OS.
You can download the Android version from Google Play and check out the GitHub project used convert the iOS app to Android.

iOS Features on Android

UIKit

Create and configure a UILabel, UIButton, UIImageView, UITableView, UICollectionView, UITextField, UITextView, etc. and display them on Android without having to know how Android Views, Buttons, RecyclerView, Adapters, etc. work.

Firebase

Continue using the official Swift Firebase iOS SDK classes, and Mutata will automatically call the official native Android ones. Currently supported: Analytics, Authentication, Crashlytics, Realtime Database, Functions, Messaging Storage and Remote Config.

In-App Purchases

Every call to Apple’s StoreKit framework is automatically matched with the corresponding one of Google’s Billing Client API. Both Non-Consumable and Subscription products are supported.

UINavigationController & UITabBarController

Using a UINavigationController in Android will enable functionality similar to iOS with animations, NavigationBar but also use of the hardware back button. In addition, UITabBarController is fully implemented using UITabBar that is displayed like iOS.

Constraints

NSLayoutConstraints are implemented using Android’s Constraint Layout. Mutata automatically sets needed Android Constraints to support all NSLayoutConstraint features. Guidelines are also utilized to set constraints with the Safe area.

Foundation + Networking

Every Swift Foundation and Foundation Networking class is fully supported in Android. Use FileManager, URLSession or NSString methods directly in your Android app.

UIKit

Create and configure a UILabel, UIButton, UIImageView, UITableView, UICollectionView, UITextField, UITextView, etc. and display them on Android without having to know how Android Views, Buttons, RecyclerView, Adapters, etc. work.

Firebase

Continue using the official Swift Firebase iOS SDK classes, and Mutata will automatically call the official native Android ones. Currently supported: Analytics, Authentication, Crashlytics, Realtime Database, Functions, Messaging Storage and Remote Config.

In-App Purchases

Every call to Apple’s StoreKit framework is automatically matched with the corresponding one of Google’s Billing Client API. Both Non-Consumable and Subscription products are supported.

UINavigationController & UITabBarController

Using a UINavigationController in Android will enable functionality similar to iOS with animations, NavigationBar but also use of the hardware back button. In addition, UITabBarController is fully implemented using UITabBar that is displayed like iOS.

Constraints

NSLayoutConstraints are implemented using Android’s Constraint Layout. Mutata automatically sets needed Android Constraints to support all NSLayoutConstraint features. Guidelines are also utilized to set constraints with the Safe area.

Foundation + Networking

Every Swift Foundation and Foundation Networking class is fully supported in Android. Use FileManager, URLSession or NSString methods directly in your Android app.

Need Help?

Hundred.Agency can help you run and convert your iOS app to Android, and finally release it your Google Play Store account.

Not another Cross-Platform framework

There is no need to rewrite your code for each platform or to have platform-specific code for the UI or native functionality. Mutata uses the Swift calls of the iOS frameworks, like UIKit and Alamofire, to run Android native code. You do not need to change your live iOS codebase; Mutata will release it directly to Google Play Store.

Apps running on Mutata

Covve Export

Export and save your contacts using native Android frameworks.

Offsite News

The official mobile app of the #1 Cyprus news portal.

KantinApp

Food and beverages ordering app for stadiums.

Add pictures to my contacts by Covve

Find people's avatars and profile images and add them to your address book

Greek METAR

Check out the weather of Greek Airports

ActionsHub

Monitor your GitHub Actions using REST API.

Toggle Ninja

An application that answers questions like: 'Did I leave my oven on?', 'Did we feed the cat?'.

Tip Calculator

Just insert your bill amount and the tip percentage, and the app will provide you with the tip amount and the total bill amount.

Share UI and features across platforms

Mutata brings most iOS Frameworks like Foundation, UIKit, WebKit, MapKit, Contacts, StoreKit, and a great deal of third party open-source plugins to Android. Both platforms now support the same features but, at the same time, maintain the native look and feel when needed. You can continue writing your iOS Swift app just like before, and Mutata will use the equivalent Android native classes when your code runs on Android.

Supported Frameworks and Plugins

AVFoundation

Use the AVPlayer framework to play local and online audio and video files.

Contacts

You can request access from CNContactStore and use CNContact to access and edit the Contacts. Users will see the native popup for Contacts permission.

WebKit

Use WKWebView to display an Android WebView with a URL or custom HTML.

QRCodeReader

QRCodeReader.swift package is fully implemented in Mutata by using a QRCode Android plugin.

YouTube Player

Play YouTube videos directly on Android by implementing the YouTube iOS SDK.

MBProgressHUD

Call MBProgressHUD’s show and hide methods in order to display a spinner in your Android application.

Use private Kotlin/Java code

If you have a Kotlin/Java codebase that you would like to call from your Swift code, this is also possible. Mutata will automatically create Mock Swift classes that will call the Kotlin code during runtime.

And more...

CircularSlider, KeychainAccess, KISSMetrics, Lottie, PromiseKit are some of our daily expanding list with 3rd party iOS frameworks that Mutata supports.

Frequently Asked Questions

Are you an agency that rewrites Swift code to run on Android?

No, Mutata is an automated service/framework that directly compiles your Swift code for Android devices. There is no rewrite or generation of Kotlin/Java/Typescript code.

Do you support Interface Builder files (.xibs/.storyboards)?

Yes, Mutata will read and load your @IBOutlet components, @IBActions and constraints, from the Interface Builder (.xib) and Storyboard files, precisely as iOS.

Do I need to know Android development to use Mutata?

No, there is no need to have experience in Android development to use Mutata.

Can I request custom plugins, Cocoapods, and Swift packages?

Sure! Mutata currently supports lots of open-source CocoaPods and Swift packages, and we are expanding the list on a daily basis, based on user requests.

Are you using native Android components?

Yes, we are! Mutata primarily uses the native Android Views and plugins to maximize compatibility and performance. In addition, native Android popups and integrations are used when needed, making the UX/UI feel similar to applications built using Kotlin/Java.

Do you support Android App Bundles (.aab)?

Of course! Except .apk, you can also generate Android App Bundles which can be uploaded directly to Google Play Store Console.

How do I use Mutata credits? Can I redeem my credits on multiple applications?

You use 1 credit every time you release a version of your iOS app to the Google Play Store using Mutata. You can use your credits pack for multiple applications.

Can I export my Kodika.io applications to Android with Mutata?

Definitely! You can now release the applications built with Kodika No Code Builder to the Google Play Store.

Made by the Kodika.io Team

Kodika.io is a No-Code App Builder available on Mac and iPad. It enables users to build complex mobile apps without programming experience.