Meertalige lokalisatie voor mobiele apps
MobileTogether biedt ondersteuning voor het naadloos lokaliseren van mobiele apps in meerdere talen. Dit stelt ontwikkelaars in staat om één versie van een mobiele app te maken die werkt in verschillende talen en op verschillende platforms.
Ontwikkelaars kunnen vertalingen voor alle benodigde tekstfragmenten in één MobileTogether-app-ontwerp opnemen. Wanneer een eindgebruiker de app opent, ongeacht of dit op een Android-telefoon, een iPhone, een Windows-desktop of een ander ondersteund platform is, wordt de taal van de app automatisch ingesteld op basis van de taal van het besturingssysteem van het apparaat.
Met meertalige aanpassing worden zelfs functies zoals tekst-naar-spraak aangepast aan de moedertaal van de gebruiker.

In een eerdere post over de functionaliteit van tekst-naar-spraak, hebben we eerst een eenvoudige demo-app gemaakt. In deze post zullen we een verbeterde versie gebruiken, die hieronder op een Android-telefoon wordt weergegeven, om lokalisatie te illustreren:

Onze demo-app voor meertalige lokalisatie biedt ondersteuning voor verschillende platforms en is beschikbaar in de talen Engels, Duits, Frans, Spaans en Italiaans.
De tekstfragmenten voor elke taal worden toegewezen in het lokalisatievenster van de MobileTogether Designer

Het bovenste gedeelte van het dialoogvenster stelt ontwikkelaars in staat om tekst in verschillende talen toe te wijzen voor elk element in de app: de knoppen "Spraak", "Stil" en "Afsluiten" die zich bovenaan het app-venster bevinden, worden vertaald in de bovenste drie rijen van het lokalisatievenster.
Wanneer de app wordt gestart op het mobiele apparaat van een gebruiker, bepaalt de standaardtaal die is ingesteld in de instellingen van het besturingssysteem welke tekst wordt weergegeven voor elk element. Als de eindgebruiker een andere taal heeft ingesteld, worden de standaardwaarden uit het lokalisatievenster gebruikt.
De groene plusknop bovenaan het dialoogvenster stelt de ontwikkelaar in staat om ondersteuning voor extra talen toe te voegen, via een lijst met standaardtaalcodes

MobileTogether biedt meertalige lokalisatie, zelfs voor talen die niet-Romeinse alfabetten gebruiken, zoals Azerbeidzjaans in het Cyrillisch (aangegeven als az-Cyrl-AZ in het menu hierboven), of het Japanse Kanji-alfabet. Sterker nog, alle demo-applicaties die met MobileTogether worden geïnstalleerd, zijn gelokaliseerd voor de Duitse, Franse, Spaanse en Japanse talen. Hieronder is een fragment van het lokalisatievenster voor de demo-applicatie "Hypotheekcalculator" te zien, waarin verschillende tekstlabels zijn gespecificeerd:

Het onderste gedeelte van het lokalisatievenster stelt ontwikkelaars in staat om tekst toe te wijzen aan zogenaamde "named strings". In onze demo-app zijn dit zinnen die worden weergegeven in dialoogvensters en tijdens de uitvoering worden uitgesproken.
Als het voor een ontwikkelaar niet haalbaar is om alle tekst die nodig is in een grote, complexe applicatie te vertalen, dan bieden de knoppen "Exporteren" en "Importeren" onderaan het lokalisatievenster de mogelijkheid om meertalige lokalisatietekst in XML-bestanden te beheren, buiten de MobileTogether Designer. Een vertaler of een andere taalprofessional kan gelokaliseerde tekst maken of aanpassen in een XML-editor, zoals Altova XMLSpy.
Wanneer onze demo-app wordt gestart, wijst een actiegroep de juiste, gelokaliseerde zinnen toe aan de knooppunten in de datastructuur

Nadat de tekstfragmenten voor de meertalige lokalisatie zijn gedefinieerd, kunt u zelfs de taal die tijdens de simulatie wordt gebruikt wijzigen, om de lokalisatie te controleren voordat de app wordt uitgebracht. De optie "Simulatietaal" is beschikbaar in het projectmenu, en de aangeboden talen komen overeen met de talen die zijn gedefinieerd in het lokalisatievenster voor het project.

Hier is een weergave van de demo-applicatie voor de hypotheekcalculator, die draait in het simulatievenster. In deze configuratie is de simulatietaal Japans en is het geselecteerde doelapparaat een iPhone 6 in portretmodus

De actie om de taalinstellingen te wijzigen
U kunt gebruikers zelfs in staat stellen om uw app in elke taal te gebruiken die u heeft vertaald, zonder dat ze de taalinstelling van het besturingssysteem van het apparaat hoeven te wijzigen. Deze functie kan nuttig zijn in een omgeving voor het leren van talen, of voor apps die op een werkstation of tablet worden gebruikt die door gebruikers met verschillende talen worden gedeeld.
Onze demo-app voor meertalige lokalisatie stelt de gebruiker in staat om een nieuwe taal te selecteren via een keuzelijst. Vervolgens bevestigt de app de keuze via een berichtvenster en start de app opnieuw op in de geselecteerde taal.
Hieronder is een screenshot te zien van de app die draait op een iPhone. De gebruiker heeft het menu voor het selecteren van de taal geopend en gescrold naar de optie voor Italiaans, maar de selectie nog niet bevestigd door op "Klaar" te klikken. (Op een Android-telefoon zou de gebruiker simpelweg op de nieuwe optie moeten tikken.)

Zodra de gebruiker de taalselectie bevestigt, start de app opnieuw op in het Italiaans:

De tekst voor het restaurant in het bewerkingsveld wordt vertaald, omdat dit een van de standaardtekstfragmenten is die zijn gedefinieerd in het lokalisatievenster

De ontwikkelaar van de demo-app wilde hoffelijk zijn en voorkomen dat gebruikers per ongeluk in een onbekende taal terecht zouden komen. Daarom voert het instellen van een nieuwe taal verschillende acties uit:

Allereerst leest een tekst-naar-spraak functie een waarschuwing over het opnieuw opstarten in de taal die in de huidige app is ingesteld.
Ten tweede verschijnt een berichtvenster met dezelfde waarschuwing om opnieuw op te starten, ook in de huidige taal, met de opties "OK" of "Annuleren".
Als de gebruiker op "OK" klikt, wordt het element "userLanguage" bijgewerkt met de waarde die is geselecteerd in het keuzelijstmenu, waarna de actie "Taal instellen" de applicatie opnieuw start.
Als de gebruiker op "Annuleren" klikt in plaats van "OK", wordt de selectie in het keuzelijstmenu teruggezet naar de huidige taal en blijft de app verder draaien zonder de taal te wijzigen, in afwachting van de volgende invoer van de gebruiker.
U kunt uw eigen mobiele apps, die op verschillende platforms werken, lokaliseren door de gratis MobileTogether Designer te downloaden. Deze software wordt geleverd met ingebouwde hulp, tutorials en veel voorbeeld-apps.