Automate your Mobile App Localization Process with Transifex Native SDKs
Mobile app localization process is the procedure of adapting to a specific locale’s language, culture or any legal requirements bound to a specific country. Mobile app localization can be critical for adoption in specific local markets. Figuring out and executing a plan to enter these new markets in a smart way to keep things sustainable from your team’s side holds a challenge on its own.
Some of the questions and challenges you will need to address include:
- languages to support: what’s the right local market to dive into?
- code localization / translation, and application UX: How many changes are needed in my codebase? How will my mobile app look in Chinese or French?
- handling releases of your localized mobile app: Should I translate everything in French before releasing a new version or should I release it twice, once for English and a second one for French? Do I have to consider the App Store submission process? What if I want to update a translation? And after all, how can I speed-up my entire mobile localization process?.
Mobile App Localization Process Now and Then
There are a few things you should do before starting to localize your mobile app. However, in this article, we will cover changes related to your codebase and the handling of your mobile app releases. Getting into codebase and releases, right now there are two very distinct ways of handling the mobile app localization process:
- Traditional (and old-school): Using the natively supported Android and iOS localization tools. These methods are well-established and can ease the fuss of making some choices regarding releases, as they only support a single way: re-submitting the app every time you want to update a translation. Additionally, these solutions use files to exchange localization content with external applications, like your Translation Management System (TMS), your Computer-Aided Translation (CAT) tool, or the agency you are using to translate your application.
- Semi-automated: Using an Over The Air (OTA) localization solution offered by many TMS. The main benefit of the OTA mobile app localization process is that you are no longer bound to App Store submission when you want to change any of your translations. You can apply the change and update your mobile application Over The Air. Still, in all the provided solutions the development team needs to perform a lengthy setup and updates in the codebase to prepare everything for the OTA delivery (add the file provided in the TMS every time a feature is added or build custom code functions in code to inject the OTA delivery).
Summarizing the above points, mobile app localization solutions are quite viable but there is always room for improvement.
How Transifex Native Mobile can further speed-up your Mobile App Localization Process
In a nutshell, Transifex Native Mobile comprises a Content Delivery Service (CDN) that delivers translations to your mobile app Over The Air and an SDK that manages code localization with minimal changes from your side. With Transifex Native Mobile, you are no longer bound to exchanging files with your TMS, and the development effort required to just include the SDK to your mobile code has been greatly minimized.
Transifex Native Mobile SDK is handling the caching and updating of translations for you. Also, thanks to an additional tool that Transifex Native Mobile offers, content is detected and pushed to Transifex TMS without the need for a file.
Getting started with Transifex Native Mobile
You can start using the Transifex Native Mobile SDK straight away as the version for iOS localization is already available.
To get started, you will need to:
- Create a Native project in the Transifex interface and generate the required tokens that need to be added to your code.
- Add the Native iOS SDK as a package dependency in XCode. No further work or functions are required in your code. The installed SDK is working on top of what XCode already supports for localization, by overriding the iOS localization framework.
- Having completed the initial setup, you can proceed to push content for localization to Transifex. To do that, use the Transifex Native CLI, for Swift or Objective-C projects.
Once your content is translated in Transifex, leveraging all the available tools, you could create all the translation versions your iOS app will use as locally cached translations, in the case the app has no Internet access the first time it launches. You can proceed with releasing your app to the Apple Store either when the first version of all the supported translations is ready or even before that, using the default language as a placeholder. After releasing your mobile app with the Native iOS SDK, you can edit and update translations in Transifex and see your live app updated with the newest content.
The Native SDK supports many custom methods to update your content, so that you can release your app to the Apple Store whenever you want; as soon as you have a first version of the translations ready, or wait for a reviewed/ final version of all the translations, proceed with a machine-translated version first, or even release your app with the source content only for all locales. Leveraging the provided functionalities, you can force update translations on any incoming change, or let Native SDK automatically make updates available the next time your app runs on the device.
Top benefits of Transifex Native SDK that streamline your mobile app localization process
Over The Air updates are only one aspect of the benefits you get using the Transifex Mobile SDK. More specifically, with Transifex Mobile SDK in place you get:
- Control and security on where your content lives and is served from. The Content Delivery Service that Native is using is customizable. This means that you can either choose to go with the service provided by Transifex, or install it in your own infrastructure. You can switch between the two with a simple code change, at any given time.
- All the work the developer has to do stays close to the IDE. Installing the SDK, pushing new content for localization, and updating the SDK’s settings happen on code and on the command-line interface (CLI), no need for extra API usage, calls, or work on the Transifex platform.
- Improved workflow for both developers and the localization team. Now both teams can work in parallel without having to wait for one another. The developers work directly on the code and the localization team processes all content that is found in Transifex.
- Android app localization and iOS app localization, or even Web app localization can be combined under one Transifex project. This way you get faster results that are consistent across application platforms. Any updates reflect back to all platforms.
The current version of the iOS SDK works on iOS 10+ and is available for Swift 5.3 and Xcode 12.3.
Looking further ahead
In the meantime, a version for Android is currently under development and will be made available by the end of February. The Android SDK version will follow the same specifications as the iOS SDK, requiring minimal effort from the developer to install and start using it, while boosting the entire process of the android app localization.
Future extensions of the mobile SDK will enable OTA updates for the source language, which is currently not supported. This way the provided Transifex Android and iOS localization tools will allow for a copywriting pass without the need for an additional release in the respecting store.
You can have a quick look at the process and register to our upcoming webinar, where together with one of our Engineering Managers, we’ll deep dive into the Transifex Native Mobile SDKs and walk you through the benefits, set-up, and installation process.