iOS SDK

Crowdin SDK allows delivering new translations from the Crowdin project to your application immediately. Using integration with Crowdin SDK there will be no need to update the application in App 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 via Editor can be shown in the application in real-time Screenshots – all screenshots made in the application may be automatically sent to your Crowdin project with tagged source strings

Krav

Requirements to integrate an iOS application with a project in Crowdin:

Development Tool

  • Xcode version 10.2+

App Programming Language

  • Swift version 4.2+

Operating System

  • iOS version 9.0+

Distributions and Releases

Distribution is a CDN vault that mirrors the translated content of your project and is required for integration with an iOS app.

Follow these steps to configure distribution:

  1. Open the needed project and go to Project Settings > Content Delivery. Over-the-Air Content Delivery Also, you can click Get Credentials button to check the details required for the OAuth application while connecting Crowdin SDK. Over-the-Air Content Delivery

  2. Add new distribution using Add Distribution button. Choose only the files, translations for which you want to be shown in your application and click Next. Over-the-Air Content Delivery

  3. Copy distribution hash so you can use it for integration. Over-the-Air Content Delivery

  4. Сreate as many distributions as you need and choose different files for each. You’ll need to click the Release button next to the necessary distribution every time you want to send new translations to the app. Over-the-Air Content Delivery

Note! Currently Custom Languages, Dialects, and Language Mapping are not supported for IOS integration.

Crowdin SDK Installation, Setup, and Advanced Features

For more details on how to set up Crowdin SDK for your application visit our GitHub repository.

Parametre

Required for all features
your_distribution_hashUnique hash which you can get by going to Projects Settings > Content Delivery. To see the distribution hash, click three-dot button on the needed distribution, choose Edit and copy distribution hash
localizations Target languages of your Crowdin project (e.g. ‘fr’, ‘el’). Format: osx_locale
source_languageSource language of your Crowdin project (e.g. "en"). Format: osx_locale
Required for Real-Time Preview and Screenshots
client_id;
client_secret
Crowdin authorization credentials. Open the project and go to Project Settings > Content Delivery, choose the feature you need and click Get Credentials
your_organization_domainThis field is not used to the Crowdin project

File Export Patterns

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

Navn Beskriveslse
%language% Language name (e.g. Ukrainian)
%locale% Locale (e.g. uk-UA)
%locale_with_underscore% Locale (e.g. uk_UA)
%osx_code% OS X locale identifier used to name ".lproj" directories
%osx_locale% OS X locale used to name translation resources (e.g. uk, zh-Hans, zh_HK)

Sikkerhed

Crowdin iOS 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 iOS 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 er ISO 27001-certificeret og har gennemført adskillige SSAE 16-revisioner. All the translations are stored at AWS servers.
  • When you use Crowdin iOS 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, should not affect end-users privacy in any way.

Var denne artikel nyttig?