OTA — mettez à jour le texte de votre application mobile instantanément, sans publication sur l'App Store

Diffusez les corrections de traduction et les nouvelles langues directement vers vos applications iOS et Android en production. Les traducteurs modifient le texte dans Tarjim, et vos utilisateurs le voient au prochain lancement — sans nouvelle compilation ni révision par les stores.

Commencer

Publiez vos textes à la vitesse de la traduction

La diffusion OTA (Over-the-Air) dissocie le texte de votre application de son cycle de publication. Corrigez une faute de frappe, rectifiez une mauvaise traduction ou lancez un nouveau marché sans attendre qu'une nouvelle version passe la révision.

Aucune publication sur l'App Store

Modifiez le texte dans Tarjim et il parvient directement à vos utilisateurs. Aucune recompilation, aucune file de révision, aucune attente de plusieurs jours pour qu'un correctif soit en ligne.

Distribué via un CDN

Les paquets de traduction sont servis depuis un CDN mondial, afin que les mises à jour se téléchargent rapidement où que soient vos utilisateurs.

Fonctionne hors ligne

Votre application est livrée avec un jeu de textes de base et met en cache chaque mise à jour localement. Si l'appareil est hors ligne, elle revient à la dernière copie en cache, puis aux valeurs par défaut intégrées.

Vérification légère des mises à jour

L'application récupère un petit manifeste pour vérifier les changements. Seules les langues réellement modifiées sont téléchargées — rien d'autre n'utilise le réseau.

iOS et Android

Un seul pipeline de publication alimente les deux plateformes. Intégrez le SDK, pointez-le vers votre projet et résolvez les clés de la même manière sur chacune.

Sensible aux environnements

Publiez séparément en préproduction et en production. Testez les textes sur une version QA avant qu'ils n'atteignent vos utilisateurs en production.

Comment fonctionne l'OTA (Over-the-Air)

1. Publiez depuis Tarjim

Lorsque vous cliquez sur Publier, Tarjim prépare chaque langue et la distribue via notre CDN mondial, accompagnée d'un petit manifeste qui indique la version actuelle de chaque langue.

2. L'application vérifie le manifeste

Au lancement, le SDK récupère le manifeste et le compare à ce qu'il a en cache. Un manifeste inchangé donne une réponse « non modifié » peu coûteuse, de sorte que la plupart des lancements ne coûtent presque rien.

3. Seuls les changements se téléchargent

Si une langue a changé, le SDK télécharge uniquement ce paquet, le remplace dans le cache local, et votre interface affiche le nouveau texte. Tout le reste demeure intact.

Pour les développeurs

Ajoutez le SDK Tarjim, configurez-le avec la clé API de votre projet et résolvez les clés par son intermédiaire. Le SDK gère pour vous la vérification du manifeste, les téléchargements, la mise en cache et le repli.

Les SDK mobiles sont en accès anticipé — les exemples ci-dessous montrent l'intégration que nous développons. Contactez-nous pour rejoindre la bêta.

iOS (Swift)

Configurez une seule fois au lancement et appelez sync() pour récupérer la dernière version des textes. Résolvez les chaînes par une simple recherche qui se rabat sur le bundle de l'application.

import Tarjim

// AppDelegate / App init
Tarjim.configure(
    apiKey: "YOUR_PROJECT_API_KEY",
    environment: .production,
    fallbackBundle: .main      // baseline .strings shipped in the app
)

// Check the manifest and download only changed languages
Tarjim.sync(locale: Locale.current.languageCode) { result in
    switch result {
    case .updated:  print("New translations applied")
    case .upToDate: print("Already current")
    case .failed(let error): print("Using cache:", error)
    }
}

// Resolve a key anywhere in the UI
label.text = Tarjim.t("home.welcome_title")

Android (Kotlin)

Initialisez dans Application.onCreate() et synchronisez en arrière-plan. Recherchez les clés via le SDK, qui se rabat sur res/values en cas d'absence.

import io.tarjim.ota.Tarjim

// Application.onCreate()
Tarjim.configure(
    context = this,
    apiKey = "YOUR_PROJECT_API_KEY",
    environment = Environment.PRODUCTION
)

// Check the manifest and download only changed languages
lifecycleScope.launch {
    when (Tarjim.sync(locale = Locale.getDefault().language)) {
        SyncResult.UPDATED   -> Log.d("Tarjim", "New translations applied")
        SyncResult.UP_TO_DATE -> Log.d("Tarjim", "Already current")
        is SyncResult.Failed  -> Log.w("Tarjim", "Using cache")
    }
}

// Resolve a key anywhere in the UI
textView.text = Tarjim.t("home.welcome_title")

Ne publiez plus une version entière juste pour corriger un mot

Gérez les textes de votre application dans Tarjim et diffusez-les over-the-air. Mettez à jour textes et langues selon votre calendrier, pas celui de l'App Store.

Commencer maintenant

Centraliser le contenu et les équipes en une seule
plateforme de localisation collaborative

Tarjim pour les administrateurs

Gardez le contrôle total et gérez vos projets depuis un seul tableau de bord.

Apprendre encore plus

Tarjim pour les traducteurs

Traduisez plus rapidement grâce à l'édition en contexte, aux outils de TAO et aux contrôles de qualité.

Apprendre encore plus

Tarjim pour les développeurs

Intégrez la localisation une seule fois et gérez les mises à jour sans modifier le code.

Apprendre encore plus

Tarjim pour les designers

Prévisualisez et synchronisez les traductions dans vos maquettes grâce aux plugins et extensions Tarjim.

Apprendre encore plus