Internationalisation audio et vidéo
Bonjour à tous,
Pourriez-vous m'aider sur le sujet suivant?:
J'ai une application iOS (Objective-C) (target min: 8.0) qui permet de consulter des informations sur des livres et documents.
Pour chaque document j'ai une page de détail avec un visuel, un texte, un fichier audio et une vidéo associée.
Mon but est de pouvoir internationaliser mon application en anglais et français.
L'internationalisation est OK pour les textes mais je ne vois pas comment gérer cela pour l'audio et la vidéo.
J'aimerai pouvoir uploader une application sur le store et que seuls des contenus en anglais se téléchargent en même temps si le smartphone est en anglais et que les contenus (audio et vidéo) en français se téléchargent sur un smartphone français dans le but d'éviter d'alourdir le poids de l'application au téléchargement.
Quelle est selon vous la meilleure stratégie à adopter pour cela?
Est-il possible d'avoir sur le store un bundle d'app + deux bundles d'assets (un par langue) qui se cumulent en fonction de la langue du device?
Merci par avance pour vos réponses.
Réponses
Si tes vidéos/audio sont embarquées, il te suffit de les mettre dans les dossiers associés (en.lproj pour l'anglais, fr.lproj pour le français)...
Merci pour ta réponse.
Donc tu me confirmes que même si tout est embarqué, l'utilisateur ne téléchargera pas tout les contenus mais uniquement ceux correspondant à la langue de son device?
Encore merci!
Je vois trois tactiques:
- faire du streaming pour les contenus audio et vidéo. Tu peux te contenter de mettre les URL en dur dans Localized.string. Avantages: facile, ne prend pas de place sur l'iPhone. Inconvénients: nécessite une connexion Internet. Bouffe du forfait.
- télécharger les fichiers en local. Avantages: disponibles hors-connexion. Inconvénients: plus difficile à mettre en oe“uvre, prend de la place.
- utiliser les "on-demande Resources", à partir d'iOS 9. https://developer.apple.com/library/ios/documentation/FileManagement/Conceptual/On_Demand_Resources_Guide/
Merci également pour ta réponse.
La première solution pour moi est inenvisageable car l'application sera utilisée dans des endroits avec peu de réseau parfois.
La deuxième est celle que j'envisage et la question que je me posais était sur la taille de l'application. En effet, cela ne me dérange pas de télécharger des audios et vidéos en même temps que l'app elle même à condition que je ne fasse pas télécharger deux audios et deux vidéos à chaque fois (anglais et français) au lieu d'une seule.
La dernière solution semble évidemment la meilleure mais je dois être compatible iOS 8...
Oui exactement, est-ce que l'application sur le store téléchargera tous les contenus dans toutes les langues ou uniquement le contenu du répertoire en.lproj ou fr.lproj?
Donc avec le principe des répertoires internationalisés en.lproj et fr.lproj? Ou je me trompe...
En résumé je me demande si le store permet de détecter automatiquement la langue et ainsi proposer soit le fr.lproj soit le en.lproj sans développement de ma part (comme le fait un peu Android non?)
Je ne suis pas sure de comprendre le problème de NSMaxime, si c'est un problème de taille de l'application sur le device, ou si c'est une question de performance lors de l'exécution. Quoi qu'il en soit, je crois que les ressources sont toutes inclues dans le binaire de l'application, donc sur l'appareil. Par contre, au moment de l'exécution, seules sont utilisées les ressources de la langue courante de l'appareil... Ou je me trompe ?
Merci de ton message, ma question est exactement celle-là .
Les ressources sont elles toutes dans le binaire téléchargé depuis le store ou uniquement celles contenues dans un répertoire *.lproj?