Android SDK

Crowdin SDK allows delivering new translations from the Crowdin Enterprise project to your application immediately. Using integration with Crowdin SDK there will be no need to update the application in the Google Play Store every time there is a new localization version.

The integration provides:

  • Over-The-Air Content Delivery – the localized files can be sent to the application from the project whenever needed.
  • Real-Time Preview – all the translations that are done in the Editor can be shown in your version of the application in real-time. View the translations already made and the ones you’re currently typing in.
  • Screenshots – all screenshots made in the application may be automatically sent to your Crowdin Enterprise project with tagged source strings.

Requirements

Requirements to integrate Android application with a project in Crowdin Enterprise:

Development Tool

  • Android SDK version 16+

App Programming Language

  • Java version 8+
    or
  • Kotlin version 1.3+

Distributions and Releases

Configure the distribution to mirror the translated content of your project and integrate with the Android app. Read more about Distributions.

Configuration

To configure Android SDK integration, follow these steps:

  1. Set up Distribution in Crowdin Enterprise.
  2. Set up SDK and enable Over-The-Air Content Delivery feature using Android Studio.

Distribution Setup

To configure distribution, follow these steps:

  1. Open your project and go to Applications > System.
  2. Find Android SDK and click Connect. Android Integration
  3. Define distribution. You can:
    • Add new distribution using the Create Distribution button. Select only the files translations for which you want to be shown in your application and click Create
      Create Distribution
      or
    • Select existing distribution (if any). Pay attention to the Last release time and, if needed, release distribution using the Over-The-Air Content Delivery tab. Existing Distribution
  4. Copy the distribution hash so you can use it for integration.
Note! Currently, Custom Languages, Dialects, and Language Mapping are not supported for Android integration.

Crowdin SDK Setup

To integrate SDK with your application, you need to enable Over-The-Air Content Delivery so that the application can pull translations from the CDN vault. For this, follow step-by-step instructions located in our GitHub repository.

Advanced Features

Real-time Preview

This feature allows translators to see translations in the application in real-time. Managers and the QA team can also use it to preview translations before release.

Screenshots

Enable this feature if you want all the screenshots made in the application to be automatically sent to your Crowdin Enterprise project with tagged strings. This way, translators will have an additional context for the source strings.

Parameters

Required for all features
your_distribution_hashUnique hash, which you can get by going to Integrations > Content Delivery. To see the distribution hash, click on the needed distribution, select Edit and copy distribution hash.
Required for advanced features
source_languageSource language of your Crowdin Enterprise project (e.g., "en").
client_id
client_secret
Crowdin Enterprise authorization credentials. Open the project and go to Applications > System > Android SDK. In the Advanced features section, click on the needed feature, and click Get Credentials.
Optional
network_typeNetwork type to be used. You may select NetworkType.ALL, NetworkType.CELLULAR, or NetworkType.WIFI
interval_in_milisecUpdate intervals in milliseconds

File Export Patterns

You can set file export patterns and check existing ones using File Settings. The following placeholders are supported for Android integration:

Name Description
%language% Language name (e.g., Ukrainian)
%two_letters_code% Language code ISO 639-1 (e.g., uk)
%three_letters_code% Language code ISO 639-2/T (e.g., ukr)
%locale% Locale (e.g., uk-UA)
%locale_with_underscore% Locale (e.g., uk_UA)
%android_code% Android Locale identifier used to name "values-" directories

Security

Crowdin Android SDK CDN feature is built with security in mind, which means minimal access possible from the end-user is required. When you decide to use Crowdin Android SDK, please make sure you’ve made the following information accessible to your end-users.

  • We use the advantages of Amazon Web Services (AWS) for our computing infrastructure. AWS has ISO 27001 certification and has completed multiple SSAE 16 audits. All the translations are stored at AWS servers.
  • When you use Crowdin Android SDK CDN – translations are uploaded to Amazon CloudFront to be delivered to the app and speed up the download. Keep in mind that your users download translations without any additional authentication.
  • We use encryption to keep your data private while in transit.
  • We do not store any Personally Identifiable Information (PII) about the end-user, but you can decide to develop the opt-out option inside your application to make sure your users have full control.
  • The Automatic Screenshots and Real-Time Preview features are supposed to be used by the development team and translators team. Those features should not be compiled to the production version of your app. Therefore, they should not affect end-users privacy in any way.

Q&A

Q: What might cause the occasional delay in getting the latest translations in the app?
A: CDN caches all the translations in release for up to 1 hour. When new translations are released in Crowdin Enterprise, CDN may still return them with a delay.

Was this article helpful?