Hvis du vil oprette forbindelse til Android-brugere på tværs af forskellige lande og kulturer, skal du lokalisere din app til at understøtte flere sprog. Denne proces starter med Android-internationalisering (i18n), som danner grundlaget for problemfri lokalisering.
At internationalisere din Android-app betyder at designe den, så den kan rumme flere sprog uden tekniske ændringer. Dette vil få din app til at føle sig bekendt for brugere fra en anden region eller kultur, hvilket øger brugervenligheden og åbner døren til nye markeder. Processen skal kun udføres én gang, hvilket sparer dig tid og penge ved hver efterfølgende lokalisering.
Denne trin-for-trin guide vil lede dig gennem processen med at internationalisere og lokalisere din Android-app. Du lærer, hvordan du forbereder din app, håndterer dynamisk indhold og tester på tværs af forskellige sprog og lokaliteter.
Sådan forbereder du dig til lokalisering af Android-apps
Internationalisering forbereder din Android-app til lokalisering. Denne proces etablerer et stærkt fundament i Android Studio for at sikre, at din app understøtter flere sprog og regioner. Sådan kommer du i gang:
-
Installer Android Studio
Start med at downloade og installere Android Studio. Android Studio er det officielle udviklingsmiljø for Android, der giver alt hvad du behøver for at internationalisere, lokalisere og teste din app.
-
Opret et nyt Android-projekt
Åbn Android Studio og opret et nyt projekt. Skabelonen "Tom aktivitet" giver et simpelt udgangspunkt.
Konfigurer derefter dine projektindstillinger således:
- Navn: Indtast dit appnavn (f.eks. "LocalizedApp").
- Pakkenavn: Brug et unikt id som "com.example.localizedappi18n."
- Sprog: Vælg Kotlin (anbefalet) eller Java.
- Minimum SDK: Indstil den laveste Android-version, som din app understøtter.
Bekræft derefter dine valg for at generere projektstrukturen.
-
Tilføj UI-elementer med fleksible layouts
Når du tilføjer UI-elementer, skal du designe med lokalisering i tankerne. Sprog som tysk kræver ofte mere plads end engelsk, hvorimod kinesiske tegn er mere kompakte. Undgå at angive faste bredder for tekstelementer, da længere oversættelser på nogle sprog kan overskride containerstørrelsen.
Overvej at bruge værktøjer som ConstraintLayout for at tillade UI-elementer at justere position og størrelse dynamisk baseret på længden af den oversatte tekst.
Her er et XML-eksempel:
<?xml version="1.0" encoding="utf-8"?>
<androidx.constraintlayout.widget.ConstraintLayout
xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
android:layout_width="match_parent"
android:layout_height="match_parent">
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="@string/welcome_message"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toTopOf="parent" />
</androidx.constraintlayout.widget.ConstraintLayout>
Her bruges TextView til at vise en strengressource (f.eks. en velkomstbesked). Ved at bruge wrap_content til bredden ændrer elementet automatisk størrelse, så det passer til længden af den oversatte tekst i stedet for at være begrænset af en fast dimension. Derudover holder ConstraintLayout tekstvisningen korrekt placeret på skærmen, uanset tekstlængde eller skærmstørrelse.
At skabe et fleksibelt layout fra starten får din app til at se flot ud, uanset hvilket sprog den er lokaliseret på.
-
Forbered dig på lokalisering med eksternaliseret tekst
Det sidste trin til at forberede din Android-app til lokalisering kræver, at du gemmer al brugervendt tekst i en separat ressourcefil i stedet for at hardkode den. Med en centraliseret ressourcefil som strings.xml, du behøver ikke manuelt at erstatte tekst spredt ud over din kode.
Sådan gør du:
- Find mappen "res/values/" i din projektmappe.
- Åbn "strings.xml" fil (hvis den ikke findes, opret en).
- Tilføj din tekst til filen ved hjælp af et navn-værdi-par:
<?xml version="1.0" encoding="utf-8"?>
<resources>
<string name="welcome_message">Velkommen til min app!</string>
</resources>
Gå tilbage til filen activity_main.xml og opdater TextView for at referere til strengressourcen:
<TextView
android:text="@string/welcome_message"
At organisere dit projekt på denne måde vil internationalisere din Android-app, så du nemt kan afgrænse det indhold, der skal lokaliseres til et andet sprog.
Sådan lokaliserer du en Android-app i 4 trin
Nu hvor du har forberedt din Android-app, er det tid til at gennemgå den trinvise lokaliseringsprocessen, fra opsætning af sprogspecifikke ressourcer til dynamisk ændring af Android-appens landestandard.
-
Udvid strings.xml til lokalisering
I forberedelsesfasen oprettede du en strings.xml-fil til at administrere al teksten i din Android-app. Nu er det tid til at udvide dette ved at oprette sprogspecifikke versioner af filen for hvert understøttet sprog.
Først skal du oprette nye mapper for hvert målsprog i dit projekts res-mappe. Brug et mappenavn, der indeholder den relevante sprogkode (f.eks. "res/values-es/" for spansk og "res/values-fr/" for fransk).
Kopier din standard strings.xml-fil til hver mappe. Oversæt derefter teksten manuelt for hvert sprog. For eksempel kan den engelske standardfil sige:
<TextView
<string name="hello_world">Hello, World!string>
Den spanske version i "values-es/strings.xml" ville være:
<TextView
<string name="hello_world">¡Hola, Mundo!string>
Når du har oprettet disse sprogspecifikke XML-filer, vælger Android automatisk den korrekte version af strings.xml baseret på brugerens enhedssprogindstillinger.
-
Håndter flertalsformer for nøjagtige oversættelser
Flertalsformer er vanskelige, fordi hvert sprog håndterer dem forskelligt. For eksempel er "one item" ental på engelsk, men hvert andet tal er flertal, uanset om det er "nul elementer" eller "two hundred items". Men sprog som russisk, walisisk og tjekkisk bruger mere specifikke regler for flertal baseret på antallet.
Sådan definerer du pluraliserede strenge i strings.xml for engelsk:
<?xml version="1.0" encoding="utf-8"?>
<resources>
<plurals name="item_count">
<item quantity="one">%d item</item>
<item quantity="other">%d varer</item>
</plurals>
</resources>
Dette tegner sig for følgende mængdeværdier:
- En: Bruges til entalsformer (f.eks. én genstand).
- Andet: Bruges til flertalsformer (f.eks. nul elementer, to elementer, tre elementer).
Engelsk kræver kun "et" og "andet", men andre sprog har flere klassifikationer. For at administrere dette giver Android et tag i strings.xml. Android understøtter tags for nul, én, to, få, mange og andet. Her er eksempler på sprog, der bruger hvert tag:
- Arabisk anvender en særlig grammatisk aftale for nul.
- Russisk behandler ethvert tal, der ender på "1", anderledes, medmindre det ender på "11".
- Welsh bruger en distinkt pluralisering, når der er to af noget.
- Sprog som tjekkisk og maltesisk skelner mellem små tal og store.
- Kineserne gør ingen forskel.
Sådan henter og formaterer du den pluraliserede streng i Kotlin:
val itemCount = 3
val message = resources.getQuantityString(R.plurals.item_count, itemCount, itemCount)
I denne kode, R.plurals.item_count er flertalsressource-id'et. Den første vareantal vælger flertalsstrengen baseret på flertalsreglerne for enhedens lokalitet, og den anden itemCount erstatter %d pladsholderen.
For eksempel, her er output for engelsk:
- For itemCount = 1: "1 vare"
- For itemCount = 3: "3 items"
-
Brug pladsholdere til dynamiske værdier
Apps viser ofte personligt eller dynamisk indhold, såsom en brugers navn eller antallet af notifikationer, de har. I stedet for at hardkode dette indhold, kan du bruge pladsholdere i dine strenge, som sådan:
<resources>
<string name="welcome_message">Velkommen, %1$s! Du har %2$d nye beskeder.</string>
</resources>
Sådan fungerer det:
- %1$s er en pladsholder for en streng (som et navn).
- %2$d er en pladsholder for et tal (som meddelelsesantallet).
Når appen kører, erstattes disse pladsholdere dynamisk med værdier input fra brugeren og deres dynamiske data.
-
Tilføj kontekstuelle tip
Oversættere ved ikke altid, hvordan en streng bruges i din app. For eksempel kan et ord som "menu" betyde en rulleliste, en restaurants madliste eller en indstillingsside. For at undgå forvirring kan du tilføje kommentarer direkte i din strings.xml:
<?xml version="1.0" encoding="utf-8"?>
<resources>
<!-- This string is used as a label for the navigation menu →
<string name="menu_label">Menu</string>
<!-- This string is used for the settings button in the app →
<string name="settings_label">Settings</string>
</resources>
Disse noter fortæller oversætteren, at ordet "menu" refererer til en navigationsfunktion i appen, ikke en restaurantmenu.
Test af lokalisering i Android
Det er afgørende at teste din lokaliserede Android-app for at sikre, at den fungerer på tværs af forskellige sprog og regioner. Ved at teste på emulatorer og rigtige enheder kan du fange problemer og levere en app, der føles naturlig og funktionel for brugere over hele verden.
Hvorfor teste på rigtige enheder?
Rigtige enheder giver den nærmeste simulering af, hvordan brugere vil interagere med din app. De viser dig, hvordan oversat tekst ser ud på en faktisk telefonskærm – uanset om den er for lang eller afskåret.
Hvorfor teste med emulatorer?
Emulatorer er en praktisk måde at teste din app på tværs af adskillige konfigurationer. De lader dig hurtigt skifte mellem sprog og regioner for at kontrollere oversættelser, layoutjusteringer og brugergrænsefladeadfærd.
Ved at kombinere begge metoder kan du bevare optimal funktionalitet og brugeroplevelse på tværs af flere sprog og lokaliteter.
Sådan bruger du Smartling til Android-lokalisering
Smartling tager kompleksiteten ud af Android-lokalisering. Med AI-drevne værktøjer, sømløse Android XML-filintegrationer og et team af ekspertoversættere tilbyder Smartling flere tjenester til at strømline hele oversættelsesprocessen fra start til slut og automatisere manuelle arbejdsgange.
Din virksomhed kan udnytte Smartlings automatiseringssystemer og datadrevne indsigter til at lokalisere hurtigere og opretholde brandkonsistens på tværs af globale markeder, og overgå dine konkurrenter og samtidig give en uovertruffen brugeroplevelse.
Klar til at lokalisere smartere, ikke sværere? Download vores gratis e-bog, "10 strategier til at øge oversættelseseffektiviteten.” Du lærer, hvordan du forbedrer oversættelseshastigheden, -kvaliteten og -omkostningerne med handlingsrettede strategier og eksempler fra den virkelige verden.
Hvis du vil oprette forbindelse til Android-brugere på tværs af forskellige lande og kulturer, skal du lokalisere din app til at understøtte flere sprog. Denne proces starter med Android-internationalisering (i18n), som danner grundlaget for problemfri lokalisering.
At internationalisere din Android-app betyder at designe den, så den kan rumme flere sprog uden tekniske ændringer. Dette vil få din app til at føle sig bekendt for brugere fra en anden region eller kultur, hvilket øger brugervenligheden og åbner døren til nye markeder. Processen skal kun udføres én gang, hvilket sparer dig tid og penge ved hver efterfølgende lokalisering.
Denne trin-for-trin guide vil lede dig gennem processen med at internationalisere og lokalisere din Android-app. Du lærer, hvordan du forbereder din app, håndterer dynamisk indhold og tester på tværs af forskellige sprog og lokaliteter.
Sådan forbereder du dig til lokalisering af Android-apps
Internationalisering forbereder din Android-app til lokalisering. Denne proces etablerer et stærkt fundament i Android Studio for at sikre, at din app understøtter flere sprog og regioner. Sådan kommer du i gang:
-
Installer Android Studio
Start med at downloade og installere Android Studio. Android Studio er det officielle udviklingsmiljø for Android, der giver alt hvad du behøver for at internationalisere, lokalisere og teste din app.
-
Opret et nyt Android-projekt
Åbn Android Studio og opret et nyt projekt. Skabelonen "Tom aktivitet" giver et simpelt udgangspunkt.
Konfigurer derefter dine projektindstillinger således:
- Navn: Indtast dit appnavn (f.eks. "LocalizedApp").
- Pakkenavn: Brug et unikt id som "com.example.localizedappi18n."
- Sprog: Vælg Kotlin (anbefalet) eller Java.
- Minimum SDK: Indstil den laveste Android-version, som din app understøtter.
Bekræft derefter dine valg for at generere projektstrukturen.
-
Tilføj UI-elementer med fleksible layouts
Når du tilføjer UI-elementer, skal du designe med lokalisering i tankerne. Sprog som tysk kræver ofte mere plads end engelsk, hvorimod kinesiske tegn er mere kompakte. Undgå at angive faste bredder for tekstelementer, da længere oversættelser på nogle sprog kan overskride containerstørrelsen.
Overvej at bruge værktøjer som ConstraintLayout for at tillade UI-elementer at justere position og størrelse dynamisk baseret på længden af den oversatte tekst.
Her er et XML-eksempel:
<?xml version="1.0" encoding="utf-8"?>
<androidx.constraintlayout.widget.ConstraintLayout
xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
android:layout_width="match_parent"
android:layout_height="match_parent">
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="@string/welcome_message"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toTopOf="parent" />
</androidx.constraintlayout.widget.ConstraintLayout>
Her bruges TextView til at vise en strengressource (f.eks. en velkomstbesked). Ved at bruge wrap_content til bredden ændrer elementet automatisk størrelse, så det passer til længden af den oversatte tekst i stedet for at være begrænset af en fast dimension. Derudover holder ConstraintLayout tekstvisningen korrekt placeret på skærmen, uanset tekstlængde eller skærmstørrelse.
At skabe et fleksibelt layout fra starten får din app til at se flot ud, uanset hvilket sprog den er lokaliseret på.
-
Forbered dig på lokalisering med eksternaliseret tekst
Det sidste trin til at forberede din Android-app til lokalisering kræver, at du gemmer al brugervendt tekst i en separat ressourcefil i stedet for at hardkode den. Med en centraliseret ressourcefil som strings.xml, du behøver ikke manuelt at erstatte tekst spredt ud over din kode.
Sådan gør du:
- Find mappen "res/values/" i din projektmappe.
- Åbn "strings.xml" fil (hvis den ikke findes, opret en).
- Tilføj din tekst til filen ved hjælp af et navn-værdi-par:
<?xml version="1.0" encoding="utf-8"?>
<resources>
<string name="welcome_message">Velkommen til min app!</string>
</resources>
Gå tilbage til filen activity_main.xml og opdater TextView for at referere til strengressourcen:
<TextView
android:text="@string/welcome_message"
At organisere dit projekt på denne måde vil internationalisere din Android-app, så du nemt kan afgrænse det indhold, der skal lokaliseres til et andet sprog.
Sådan lokaliserer du en Android-app i 4 trin
Nu hvor du har forberedt din Android-app, er det tid til at gennemgå den trinvise lokaliseringsprocessen, fra opsætning af sprogspecifikke ressourcer til dynamisk ændring af Android-appens landestandard.
-
Udvid strings.xml til lokalisering
I forberedelsesfasen oprettede du en strings.xml-fil til at administrere al teksten i din Android-app. Nu er det tid til at udvide dette ved at oprette sprogspecifikke versioner af filen for hvert understøttet sprog.
Først skal du oprette nye mapper for hvert målsprog i dit projekts res-mappe. Brug et mappenavn, der indeholder den relevante sprogkode (f.eks. "res/values-es/" for spansk og "res/values-fr/" for fransk).
Kopier din standard strings.xml-fil til hver mappe. Oversæt derefter teksten manuelt for hvert sprog. For eksempel kan den engelske standardfil sige:
<TextView
<string name="hello_world">Hello, World!string>
Den spanske version i "values-es/strings.xml" ville være:
<TextView
<string name="hello_world">¡Hola, Mundo!string>
Når du har oprettet disse sprogspecifikke XML-filer, vælger Android automatisk den korrekte version af strings.xml baseret på brugerens enhedssprogindstillinger.
-
Håndter flertalsformer for nøjagtige oversættelser
Flertalsformer er vanskelige, fordi hvert sprog håndterer dem forskelligt. For eksempel er "one item" ental på engelsk, men hvert andet tal er flertal, uanset om det er "nul elementer" eller "two hundred items". Men sprog som russisk, walisisk og tjekkisk bruger mere specifikke regler for flertal baseret på antallet.
Sådan definerer du pluraliserede strenge i strings.xml for engelsk:
<?xml version="1.0" encoding="utf-8"?>
<resources>
<plurals name="item_count">
<item quantity="one">%d item</item>
<item quantity="other">%d varer</item>
</plurals>
</resources>
Dette tegner sig for følgende mængdeværdier:
- En: Bruges til entalsformer (f.eks. én genstand).
- Andet: Bruges til flertalsformer (f.eks. nul elementer, to elementer, tre elementer).
Engelsk kræver kun "et" og "andet", men andre sprog har flere klassifikationer. For at administrere dette giver Android et tag i strings.xml. Android understøtter tags for nul, én, to, få, mange og andet. Her er eksempler på sprog, der bruger hvert tag:
- Arabisk anvender en særlig grammatisk aftale for nul.
- Russisk behandler ethvert tal, der ender på "1", anderledes, medmindre det ender på "11".
- Welsh bruger en distinkt pluralisering, når der er to af noget.
- Sprog som tjekkisk og maltesisk skelner mellem små tal og store.
- Kineserne gør ingen forskel.
Sådan henter og formaterer du den pluraliserede streng i Kotlin:
val itemCount = 3
val message = resources.getQuantityString(R.plurals.item_count, itemCount, itemCount)
I denne kode, R.plurals.item_count er flertalsressource-id'et. Den første vareantal vælger flertalsstrengen baseret på flertalsreglerne for enhedens lokalitet, og den anden itemCount erstatter %d pladsholderen.
For eksempel, her er output for engelsk:
- For itemCount = 1: "1 vare"
- For itemCount = 3: "3 items"
-
Brug pladsholdere til dynamiske værdier
Apps viser ofte personligt eller dynamisk indhold, såsom en brugers navn eller antallet af notifikationer, de har. I stedet for at hardkode dette indhold, kan du bruge pladsholdere i dine strenge, som sådan:
<resources>
<string name="welcome_message">Velkommen, %1$s! Du har %2$d nye beskeder.</string>
</resources>
Sådan fungerer det:
- %1$s er en pladsholder for en streng (som et navn).
- %2$d er en pladsholder for et tal (som meddelelsesantallet).
Når appen kører, erstattes disse pladsholdere dynamisk med værdier input fra brugeren og deres dynamiske data.
-
Tilføj kontekstuelle tip
Oversættere ved ikke altid, hvordan en streng bruges i din app. For eksempel kan et ord som "menu" betyde en rulleliste, en restaurants madliste eller en indstillingsside. For at undgå forvirring kan du tilføje kommentarer direkte i din strings.xml:
<?xml version="1.0" encoding="utf-8"?>
<resources>
<!-- This string is used as a label for the navigation menu →
<string name="menu_label">Menu</string>
<!-- This string is used for the settings button in the app →
<string name="settings_label">Settings</string>
</resources>
Disse noter fortæller oversætteren, at ordet "menu" refererer til en navigationsfunktion i appen, ikke en restaurantmenu.
Test af lokalisering i Android
Det er afgørende at teste din lokaliserede Android-app for at sikre, at den fungerer på tværs af forskellige sprog og regioner. Ved at teste på emulatorer og rigtige enheder kan du fange problemer og levere en app, der føles naturlig og funktionel for brugere over hele verden.
Hvorfor teste på rigtige enheder?
Rigtige enheder giver den nærmeste simulering af, hvordan brugere vil interagere med din app. De viser dig, hvordan oversat tekst ser ud på en faktisk telefonskærm – uanset om den er for lang eller afskåret.
Hvorfor teste med emulatorer?
Emulatorer er en praktisk måde at teste din app på tværs af adskillige konfigurationer. De lader dig hurtigt skifte mellem sprog og regioner for at kontrollere oversættelser, layoutjusteringer og brugergrænsefladeadfærd.
Ved at kombinere begge metoder kan du bevare optimal funktionalitet og brugeroplevelse på tværs af flere sprog og lokaliteter.
Sådan bruger du Smartling til Android-lokalisering
Smartling tager kompleksiteten ud af Android-lokalisering. Med AI-drevne værktøjer, sømløse Android XML-filintegrationer og et team af ekspertoversættere tilbyder Smartling flere tjenester til at strømline hele oversættelsesprocessen fra start til slut og automatisere manuelle arbejdsgange.
Din virksomhed kan udnytte Smartlings automatiseringssystemer og datadrevne indsigter til at lokalisere hurtigere og opretholde brandkonsistens på tværs af globale markeder, og overgå dine konkurrenter og samtidig give en uovertruffen brugeroplevelse.
Klar til at lokalisere smartere, ikke sværere? Download vores gratis e-bog, "10 strategier til at øge oversættelseseffektiviteten.” Du lærer, hvordan du forbedrer oversættelseshastigheden, -kvaliteten og -omkostningerne med handlingsrettede strategier og eksempler fra den virkelige verden.
Hvis du vil oprette forbindelse til Android-brugere på tværs af forskellige lande og kulturer, skal du lokalisere din app til at understøtte flere sprog. Denne proces starter med Android-internationalisering (i18n), som danner grundlaget for problemfri lokalisering.
At internationalisere din Android-app betyder at designe den, så den kan rumme flere sprog uden tekniske ændringer. Dette vil få din app til at føle sig bekendt for brugere fra en anden region eller kultur, hvilket øger brugervenligheden og åbner døren til nye markeder. Processen skal kun udføres én gang, hvilket sparer dig tid og penge ved hver efterfølgende lokalisering.
Denne trin-for-trin guide vil lede dig gennem processen med at internationalisere og lokalisere din Android-app. Du lærer, hvordan du forbereder din app, håndterer dynamisk indhold og tester på tværs af forskellige sprog og lokaliteter.
Sådan forbereder du dig til lokalisering af Android-apps
Internationalisering forbereder din Android-app til lokalisering. Denne proces etablerer et stærkt fundament i Android Studio for at sikre, at din app understøtter flere sprog og regioner. Sådan kommer du i gang:
-
Installer Android Studio
Start med at downloade og installere Android Studio. Android Studio er det officielle udviklingsmiljø for Android, der giver alt hvad du behøver for at internationalisere, lokalisere og teste din app.
-
Opret et nyt Android-projekt
Åbn Android Studio og opret et nyt projekt. Skabelonen "Tom aktivitet" giver et simpelt udgangspunkt.
Konfigurer derefter dine projektindstillinger således:
- Navn: Indtast dit appnavn (f.eks. "LocalizedApp").
- Pakkenavn: Brug et unikt id som "com.example.localizedappi18n."
- Sprog: Vælg Kotlin (anbefalet) eller Java.
- Minimum SDK: Indstil den laveste Android-version, som din app understøtter.
Bekræft derefter dine valg for at generere projektstrukturen.
-
Tilføj UI-elementer med fleksible layouts
Når du tilføjer UI-elementer, skal du designe med lokalisering i tankerne. Sprog som tysk kræver ofte mere plads end engelsk, hvorimod kinesiske tegn er mere kompakte. Undgå at angive faste bredder for tekstelementer, da længere oversættelser på nogle sprog kan overskride containerstørrelsen.
Overvej at bruge værktøjer som ConstraintLayout for at tillade UI-elementer at justere position og størrelse dynamisk baseret på længden af den oversatte tekst.
Her er et XML-eksempel:
<?xml version="1.0" encoding="utf-8"?>
<androidx.constraintlayout.widget.ConstraintLayout
xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
android:layout_width="match_parent"
android:layout_height="match_parent">
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="@string/welcome_message"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toTopOf="parent" />
</androidx.constraintlayout.widget.ConstraintLayout>
Her bruges TextView til at vise en strengressource (f.eks. en velkomstbesked). Ved at bruge wrap_content til bredden ændrer elementet automatisk størrelse, så det passer til længden af den oversatte tekst i stedet for at være begrænset af en fast dimension. Derudover holder ConstraintLayout tekstvisningen korrekt placeret på skærmen, uanset tekstlængde eller skærmstørrelse.
At skabe et fleksibelt layout fra starten får din app til at se flot ud, uanset hvilket sprog den er lokaliseret på.
-
Forbered dig på lokalisering med eksternaliseret tekst
Det sidste trin til at forberede din Android-app til lokalisering kræver, at du gemmer al brugervendt tekst i en separat ressourcefil i stedet for at hardkode den. Med en centraliseret ressourcefil som strings.xml, du behøver ikke manuelt at erstatte tekst spredt ud over din kode.
Sådan gør du:
- Find mappen "res/values/" i din projektmappe.
- Åbn "strings.xml" fil (hvis den ikke findes, opret en).
- Tilføj din tekst til filen ved hjælp af et navn-værdi-par:
<?xml version="1.0" encoding="utf-8"?>
<resources>
<string name="welcome_message">Velkommen til min app!</string>
</resources>
Gå tilbage til filen activity_main.xml og opdater TextView for at referere til strengressourcen:
<TextView
android:text="@string/welcome_message"
At organisere dit projekt på denne måde vil internationalisere din Android-app, så du nemt kan afgrænse det indhold, der skal lokaliseres til et andet sprog.
Sådan lokaliserer du en Android-app i 4 trin
Nu hvor du har forberedt din Android-app, er det tid til at gennemgå den trinvise lokaliseringsprocessen, fra opsætning af sprogspecifikke ressourcer til dynamisk ændring af Android-appens landestandard.
-
Udvid strings.xml til lokalisering
I forberedelsesfasen oprettede du en strings.xml-fil til at administrere al teksten i din Android-app. Nu er det tid til at udvide dette ved at oprette sprogspecifikke versioner af filen for hvert understøttet sprog.
Først skal du oprette nye mapper for hvert målsprog i dit projekts res-mappe. Brug et mappenavn, der indeholder den relevante sprogkode (f.eks. "res/values-es/" for spansk og "res/values-fr/" for fransk).
Kopier din standard strings.xml-fil til hver mappe. Oversæt derefter teksten manuelt for hvert sprog. For eksempel kan den engelske standardfil sige:
<TextView
<string name="hello_world">Hello, World!string>
Den spanske version i "values-es/strings.xml" ville være:
<TextView
<string name="hello_world">¡Hola, Mundo!string>
Når du har oprettet disse sprogspecifikke XML-filer, vælger Android automatisk den korrekte version af strings.xml baseret på brugerens enhedssprogindstillinger.
-
Håndter flertalsformer for nøjagtige oversættelser
Flertalsformer er vanskelige, fordi hvert sprog håndterer dem forskelligt. For eksempel er "one item" ental på engelsk, men hvert andet tal er flertal, uanset om det er "nul elementer" eller "two hundred items". Men sprog som russisk, walisisk og tjekkisk bruger mere specifikke regler for flertal baseret på antallet.
Sådan definerer du pluraliserede strenge i strings.xml for engelsk:
<?xml version="1.0" encoding="utf-8"?>
<resources>
<plurals name="item_count">
<item quantity="one">%d item</item>
<item quantity="other">%d varer</item>
</plurals>
</resources>
Dette tegner sig for følgende mængdeværdier:
- En: Bruges til entalsformer (f.eks. én genstand).
- Andet: Bruges til flertalsformer (f.eks. nul elementer, to elementer, tre elementer).
Engelsk kræver kun "et" og "andet", men andre sprog har flere klassifikationer. For at administrere dette giver Android et tag i strings.xml. Android understøtter tags for nul, én, to, få, mange og andet. Her er eksempler på sprog, der bruger hvert tag:
- Arabisk anvender en særlig grammatisk aftale for nul.
- Russisk behandler ethvert tal, der ender på "1", anderledes, medmindre det ender på "11".
- Welsh bruger en distinkt pluralisering, når der er to af noget.
- Sprog som tjekkisk og maltesisk skelner mellem små tal og store.
- Kineserne gør ingen forskel.
Sådan henter og formaterer du den pluraliserede streng i Kotlin:
val itemCount = 3
val message = resources.getQuantityString(R.plurals.item_count, itemCount, itemCount)
I denne kode, R.plurals.item_count er flertalsressource-id'et. Den første vareantal vælger flertalsstrengen baseret på flertalsreglerne for enhedens lokalitet, og den anden itemCount erstatter %d pladsholderen.
For eksempel, her er output for engelsk:
- For itemCount = 1: "1 vare"
- For itemCount = 3: "3 items"
-
Brug pladsholdere til dynamiske værdier
Apps viser ofte personligt eller dynamisk indhold, såsom en brugers navn eller antallet af notifikationer, de har. I stedet for at hardkode dette indhold, kan du bruge pladsholdere i dine strenge, som sådan:
<resources>
<string name="welcome_message">Velkommen, %1$s! Du har %2$d nye beskeder.</string>
</resources>
Sådan fungerer det:
- %1$s er en pladsholder for en streng (som et navn).
- %2$d er en pladsholder for et tal (som meddelelsesantallet).
Når appen kører, erstattes disse pladsholdere dynamisk med værdier input fra brugeren og deres dynamiske data.
-
Tilføj kontekstuelle tip
Oversættere ved ikke altid, hvordan en streng bruges i din app. For eksempel kan et ord som "menu" betyde en rulleliste, en restaurants madliste eller en indstillingsside. For at undgå forvirring kan du tilføje kommentarer direkte i din strings.xml:
<?xml version="1.0" encoding="utf-8"?>
<resources>
<!-- This string is used as a label for the navigation menu →
<string name="menu_label">Menu</string>
<!-- This string is used for the settings button in the app →
<string name="settings_label">Settings</string>
</resources>
Disse noter fortæller oversætteren, at ordet "menu" refererer til en navigationsfunktion i appen, ikke en restaurantmenu.
Test af lokalisering i Android
Det er afgørende at teste din lokaliserede Android-app for at sikre, at den fungerer på tværs af forskellige sprog og regioner. Ved at teste på emulatorer og rigtige enheder kan du fange problemer og levere en app, der føles naturlig og funktionel for brugere over hele verden.
Hvorfor teste på rigtige enheder?
Rigtige enheder giver den nærmeste simulering af, hvordan brugere vil interagere med din app. De viser dig, hvordan oversat tekst ser ud på en faktisk telefonskærm – uanset om den er for lang eller afskåret.
Hvorfor teste med emulatorer?
Emulatorer er en praktisk måde at teste din app på tværs af adskillige konfigurationer. De lader dig hurtigt skifte mellem sprog og regioner for at kontrollere oversættelser, layoutjusteringer og brugergrænsefladeadfærd.
Ved at kombinere begge metoder kan du bevare optimal funktionalitet og brugeroplevelse på tværs af flere sprog og lokaliteter.
Sådan bruger du Smartling til Android-lokalisering
Smartling tager kompleksiteten ud af Android-lokalisering. Med AI-drevne værktøjer, sømløse Android XML-filintegrationer og et team af ekspertoversættere tilbyder Smartling flere tjenester til at strømline hele oversættelsesprocessen fra start til slut og automatisere manuelle arbejdsgange.
Din virksomhed kan udnytte Smartlings automatiseringssystemer og datadrevne indsigter til at lokalisere hurtigere og opretholde brandkonsistens på tværs af globale markeder, og overgå dine konkurrenter og samtidig give en uovertruffen brugeroplevelse.
Klar til at lokalisere smartere, ikke sværere? Download vores gratis e-bog, "10 strategier til at øge oversættelseseffektiviteten.” Du lærer, hvordan du forbedrer oversættelseshastigheden, -kvaliteten og -omkostningerne med handlingsrettede strategier og eksempler fra den virkelige verden.
Hvis du vil oprette forbindelse til Android-brugere på tværs af forskellige lande og kulturer, skal du lokalisere din app til at understøtte flere sprog. Denne proces starter med Android-internationalisering (i18n), som danner grundlaget for problemfri lokalisering.
At internationalisere din Android-app betyder at designe den, så den kan rumme flere sprog uden tekniske ændringer. Dette vil få din app til at føle sig bekendt for brugere fra en anden region eller kultur, hvilket øger brugervenligheden og åbner døren til nye markeder. Processen skal kun udføres én gang, hvilket sparer dig tid og penge ved hver efterfølgende lokalisering.
Denne trin-for-trin guide vil lede dig gennem processen med at internationalisere og lokalisere din Android-app. Du lærer, hvordan du forbereder din app, håndterer dynamisk indhold og tester på tværs af forskellige sprog og lokaliteter.
Sådan forbereder du dig til lokalisering af Android-apps
Internationalisering forbereder din Android-app til lokalisering. Denne proces etablerer et stærkt fundament i Android Studio for at sikre, at din app understøtter flere sprog og regioner. Sådan kommer du i gang:
-
Installer Android Studio
Start med at downloade og installere Android Studio. Android Studio er det officielle udviklingsmiljø for Android, der giver alt hvad du behøver for at internationalisere, lokalisere og teste din app.
-
Opret et nyt Android-projekt
Åbn Android Studio og opret et nyt projekt. Skabelonen "Tom aktivitet" giver et simpelt udgangspunkt.
Konfigurer derefter dine projektindstillinger således:
- Navn: Indtast dit appnavn (f.eks. "LocalizedApp").
- Pakkenavn: Brug et unikt id som "com.example.localizedappi18n."
- Sprog: Vælg Kotlin (anbefalet) eller Java.
- Minimum SDK: Indstil den laveste Android-version, som din app understøtter.
Bekræft derefter dine valg for at generere projektstrukturen.
-
Tilføj UI-elementer med fleksible layouts
Når du tilføjer UI-elementer, skal du designe med lokalisering i tankerne. Sprog som tysk kræver ofte mere plads end engelsk, hvorimod kinesiske tegn er mere kompakte. Undgå at angive faste bredder for tekstelementer, da længere oversættelser på nogle sprog kan overskride containerstørrelsen.
Overvej at bruge værktøjer som ConstraintLayout for at tillade UI-elementer at justere position og størrelse dynamisk baseret på længden af den oversatte tekst.
Her er et XML-eksempel:
<?xml version="1.0" encoding="utf-8"?>
<androidx.constraintlayout.widget.ConstraintLayout
xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
android:layout_width="match_parent"
android:layout_height="match_parent">
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="@string/welcome_message"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toTopOf="parent" />
</androidx.constraintlayout.widget.ConstraintLayout>
Her bruges TextView til at vise en strengressource (f.eks. en velkomstbesked). Ved at bruge wrap_content til bredden ændrer elementet automatisk størrelse, så det passer til længden af den oversatte tekst i stedet for at være begrænset af en fast dimension. Derudover holder ConstraintLayout tekstvisningen korrekt placeret på skærmen, uanset tekstlængde eller skærmstørrelse.
At skabe et fleksibelt layout fra starten får din app til at se flot ud, uanset hvilket sprog den er lokaliseret på.
-
Forbered dig på lokalisering med eksternaliseret tekst
Det sidste trin til at forberede din Android-app til lokalisering kræver, at du gemmer al brugervendt tekst i en separat ressourcefil i stedet for at hardkode den. Med en centraliseret ressourcefil som strings.xml, du behøver ikke manuelt at erstatte tekst spredt ud over din kode.
Sådan gør du:
- Find mappen "res/values/" i din projektmappe.
- Åbn "strings.xml" fil (hvis den ikke findes, opret en).
- Tilføj din tekst til filen ved hjælp af et navn-værdi-par:
<?xml version="1.0" encoding="utf-8"?>
<resources>
<string name="welcome_message">Velkommen til min app!</string>
</resources>
Gå tilbage til filen activity_main.xml og opdater TextView for at referere til strengressourcen:
<TextView
android:text="@string/welcome_message"
At organisere dit projekt på denne måde vil internationalisere din Android-app, så du nemt kan afgrænse det indhold, der skal lokaliseres til et andet sprog.
Sådan lokaliserer du en Android-app i 4 trin
Nu hvor du har forberedt din Android-app, er det tid til at gennemgå den trinvise lokaliseringsprocessen, fra opsætning af sprogspecifikke ressourcer til dynamisk ændring af Android-appens landestandard.
-
Udvid strings.xml til lokalisering
I forberedelsesfasen oprettede du en strings.xml-fil til at administrere al teksten i din Android-app. Nu er det tid til at udvide dette ved at oprette sprogspecifikke versioner af filen for hvert understøttet sprog.
Først skal du oprette nye mapper for hvert målsprog i dit projekts res-mappe. Brug et mappenavn, der indeholder den relevante sprogkode (f.eks. "res/values-es/" for spansk og "res/values-fr/" for fransk).
Kopier din standard strings.xml-fil til hver mappe. Oversæt derefter teksten manuelt for hvert sprog. For eksempel kan den engelske standardfil sige:
<TextView
<string name="hello_world">Hello, World!string>
Den spanske version i "values-es/strings.xml" ville være:
<TextView
<string name="hello_world">¡Hola, Mundo!string>
Når du har oprettet disse sprogspecifikke XML-filer, vælger Android automatisk den korrekte version af strings.xml baseret på brugerens enhedssprogindstillinger.
-
Håndter flertalsformer for nøjagtige oversættelser
Flertalsformer er vanskelige, fordi hvert sprog håndterer dem forskelligt. For eksempel er "one item" ental på engelsk, men hvert andet tal er flertal, uanset om det er "nul elementer" eller "two hundred items". Men sprog som russisk, walisisk og tjekkisk bruger mere specifikke regler for flertal baseret på antallet.
Sådan definerer du pluraliserede strenge i strings.xml for engelsk:
<?xml version="1.0" encoding="utf-8"?>
<resources>
<plurals name="item_count">
<item quantity="one">%d item</item>
<item quantity="other">%d varer</item>
</plurals>
</resources>
Dette tegner sig for følgende mængdeværdier:
- En: Bruges til entalsformer (f.eks. én genstand).
- Andet: Bruges til flertalsformer (f.eks. nul elementer, to elementer, tre elementer).
Engelsk kræver kun "et" og "andet", men andre sprog har flere klassifikationer. For at administrere dette giver Android et tag i strings.xml. Android understøtter tags for nul, én, to, få, mange og andet. Her er eksempler på sprog, der bruger hvert tag:
- Arabisk anvender en særlig grammatisk aftale for nul.
- Russisk behandler ethvert tal, der ender på "1", anderledes, medmindre det ender på "11".
- Welsh bruger en distinkt pluralisering, når der er to af noget.
- Sprog som tjekkisk og maltesisk skelner mellem små tal og store.
- Kineserne gør ingen forskel.
Sådan henter og formaterer du den pluraliserede streng i Kotlin:
val itemCount = 3
val message = resources.getQuantityString(R.plurals.item_count, itemCount, itemCount)
I denne kode, R.plurals.item_count er flertalsressource-id'et. Den første vareantal vælger flertalsstrengen baseret på flertalsreglerne for enhedens lokalitet, og den anden itemCount erstatter %d pladsholderen.
For eksempel, her er output for engelsk:
- For itemCount = 1: "1 vare"
- For itemCount = 3: "3 items"
-
Brug pladsholdere til dynamiske værdier
Apps viser ofte personligt eller dynamisk indhold, såsom en brugers navn eller antallet af notifikationer, de har. I stedet for at hardkode dette indhold, kan du bruge pladsholdere i dine strenge, som sådan:
<resources>
<string name="welcome_message">Velkommen, %1$s! Du har %2$d nye beskeder.</string>
</resources>
Sådan fungerer det:
- %1$s er en pladsholder for en streng (som et navn).
- %2$d er en pladsholder for et tal (som meddelelsesantallet).
Når appen kører, erstattes disse pladsholdere dynamisk med værdier input fra brugeren og deres dynamiske data.
-
Tilføj kontekstuelle tip
Oversættere ved ikke altid, hvordan en streng bruges i din app. For eksempel kan et ord som "menu" betyde en rulleliste, en restaurants madliste eller en indstillingsside. For at undgå forvirring kan du tilføje kommentarer direkte i din strings.xml:
<?xml version="1.0" encoding="utf-8"?>
<resources>
<!-- This string is used as a label for the navigation menu →
<string name="menu_label">Menu</string>
<!-- This string is used for the settings button in the app →
<string name="settings_label">Settings</string>
</resources>
Disse noter fortæller oversætteren, at ordet "menu" refererer til en navigationsfunktion i appen, ikke en restaurantmenu.
Test af lokalisering i Android
Det er afgørende at teste din lokaliserede Android-app for at sikre, at den fungerer på tværs af forskellige sprog og regioner. Ved at teste på emulatorer og rigtige enheder kan du fange problemer og levere en app, der føles naturlig og funktionel for brugere over hele verden.
Hvorfor teste på rigtige enheder?
Rigtige enheder giver den nærmeste simulering af, hvordan brugere vil interagere med din app. De viser dig, hvordan oversat tekst ser ud på en faktisk telefonskærm – uanset om den er for lang eller afskåret.
Hvorfor teste med emulatorer?
Emulatorer er en praktisk måde at teste din app på tværs af adskillige konfigurationer. De lader dig hurtigt skifte mellem sprog og regioner for at kontrollere oversættelser, layoutjusteringer og brugergrænsefladeadfærd.
Ved at kombinere begge metoder kan du bevare optimal funktionalitet og brugeroplevelse på tværs af flere sprog og lokaliteter.
Sådan bruger du Smartling til Android-lokalisering
Smartling tager kompleksiteten ud af Android-lokalisering. Med AI-drevne værktøjer, sømløse Android XML-filintegrationer og et team af ekspertoversættere tilbyder Smartling flere tjenester til at strømline hele oversættelsesprocessen fra start til slut og automatisere manuelle arbejdsgange.
Din virksomhed kan udnytte Smartlings automatiseringssystemer og datadrevne indsigter til at lokalisere hurtigere og opretholde brandkonsistens på tværs af globale markeder, og overgå dine konkurrenter og samtidig give en uovertruffen brugeroplevelse.
Klar til at lokalisere smartere, ikke sværere? Download vores gratis e-bog, "10 strategier til at øge oversættelseseffektiviteten.” Du lærer, hvordan du forbedrer oversættelseshastigheden, -kvaliteten og -omkostningerne med handlingsrettede strategier og eksempler fra den virkelige verden.
Hvis du vil oprette forbindelse til Android-brugere på tværs af forskellige lande og kulturer, skal du lokalisere din app til at understøtte flere sprog. Denne proces starter med Android-internationalisering (i18n), som danner grundlaget for problemfri lokalisering.
At internationalisere din Android-app betyder at designe den, så den kan rumme flere sprog uden tekniske ændringer. Dette vil få din app til at føle sig bekendt for brugere fra en anden region eller kultur, hvilket øger brugervenligheden og åbner døren til nye markeder. Processen skal kun udføres én gang, hvilket sparer dig tid og penge ved hver efterfølgende lokalisering.
Denne trin-for-trin guide vil lede dig gennem processen med at internationalisere og lokalisere din Android-app. Du lærer, hvordan du forbereder din app, håndterer dynamisk indhold og tester på tværs af forskellige sprog og lokaliteter.
Sådan forbereder du dig til lokalisering af Android-apps
Internationalisering forbereder din Android-app til lokalisering. Denne proces etablerer et stærkt fundament i Android Studio for at sikre, at din app understøtter flere sprog og regioner. Sådan kommer du i gang:
-
Installer Android Studio
Start med at downloade og installere Android Studio. Android Studio er det officielle udviklingsmiljø for Android, der giver alt hvad du behøver for at internationalisere, lokalisere og teste din app.
-
Opret et nyt Android-projekt
Åbn Android Studio og opret et nyt projekt. Skabelonen "Tom aktivitet" giver et simpelt udgangspunkt.
Konfigurer derefter dine projektindstillinger således:
- Navn: Indtast dit appnavn (f.eks. "LocalizedApp").
- Pakkenavn: Brug et unikt id som "com.example.localizedappi18n."
- Sprog: Vælg Kotlin (anbefalet) eller Java.
- Minimum SDK: Indstil den laveste Android-version, som din app understøtter.
Bekræft derefter dine valg for at generere projektstrukturen.
-
Tilføj UI-elementer med fleksible layouts
Når du tilføjer UI-elementer, skal du designe med lokalisering i tankerne. Sprog som tysk kræver ofte mere plads end engelsk, hvorimod kinesiske tegn er mere kompakte. Undgå at angive faste bredder for tekstelementer, da længere oversættelser på nogle sprog kan overskride containerstørrelsen.
Overvej at bruge værktøjer som ConstraintLayout for at tillade UI-elementer at justere position og størrelse dynamisk baseret på længden af den oversatte tekst.
Her er et XML-eksempel:
<?xml version="1.0" encoding="utf-8"?>
<androidx.constraintlayout.widget.ConstraintLayout
xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
android:layout_width="match_parent"
android:layout_height="match_parent">
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="@string/welcome_message"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toTopOf="parent" />
</androidx.constraintlayout.widget.ConstraintLayout>
Her bruges TextView til at vise en strengressource (f.eks. en velkomstbesked). Ved at bruge wrap_content til bredden ændrer elementet automatisk størrelse, så det passer til længden af den oversatte tekst i stedet for at være begrænset af en fast dimension. Derudover holder ConstraintLayout tekstvisningen korrekt placeret på skærmen, uanset tekstlængde eller skærmstørrelse.
At skabe et fleksibelt layout fra starten får din app til at se flot ud, uanset hvilket sprog den er lokaliseret på.
-
Forbered dig på lokalisering med eksternaliseret tekst
Det sidste trin til at forberede din Android-app til lokalisering kræver, at du gemmer al brugervendt tekst i en separat ressourcefil i stedet for at hardkode den. Med en centraliseret ressourcefil som strings.xml, du behøver ikke manuelt at erstatte tekst spredt ud over din kode.
Sådan gør du:
- Find mappen "res/values/" i din projektmappe.
- Åbn "strings.xml" fil (hvis den ikke findes, opret en).
- Tilføj din tekst til filen ved hjælp af et navn-værdi-par:
<?xml version="1.0" encoding="utf-8"?>
<resources>
<string name="welcome_message">Velkommen til min app!</string>
</resources>
Gå tilbage til filen activity_main.xml og opdater TextView for at referere til strengressourcen:
<TextView
android:text="@string/welcome_message"
At organisere dit projekt på denne måde vil internationalisere din Android-app, så du nemt kan afgrænse det indhold, der skal lokaliseres til et andet sprog.
Sådan lokaliserer du en Android-app i 4 trin
Nu hvor du har forberedt din Android-app, er det tid til at gennemgå den trinvise lokaliseringsprocessen, fra opsætning af sprogspecifikke ressourcer til dynamisk ændring af Android-appens landestandard.
-
Udvid strings.xml til lokalisering
I forberedelsesfasen oprettede du en strings.xml-fil til at administrere al teksten i din Android-app. Nu er det tid til at udvide dette ved at oprette sprogspecifikke versioner af filen for hvert understøttet sprog.
Først skal du oprette nye mapper for hvert målsprog i dit projekts res-mappe. Brug et mappenavn, der indeholder den relevante sprogkode (f.eks. "res/values-es/" for spansk og "res/values-fr/" for fransk).
Kopier din standard strings.xml-fil til hver mappe. Oversæt derefter teksten manuelt for hvert sprog. For eksempel kan den engelske standardfil sige:
<TextView
<string name="hello_world">Hello, World!string>
Den spanske version i "values-es/strings.xml" ville være:
<TextView
<string name="hello_world">¡Hola, Mundo!string>
Når du har oprettet disse sprogspecifikke XML-filer, vælger Android automatisk den korrekte version af strings.xml baseret på brugerens enhedssprogindstillinger.
-
Håndter flertalsformer for nøjagtige oversættelser
Flertalsformer er vanskelige, fordi hvert sprog håndterer dem forskelligt. For eksempel er "one item" ental på engelsk, men hvert andet tal er flertal, uanset om det er "nul elementer" eller "two hundred items". Men sprog som russisk, walisisk og tjekkisk bruger mere specifikke regler for flertal baseret på antallet.
Sådan definerer du pluraliserede strenge i strings.xml for engelsk:
<?xml version="1.0" encoding="utf-8"?>
<resources>
<plurals name="item_count">
<item quantity="one">%d item</item>
<item quantity="other">%d varer</item>
</plurals>
</resources>
Dette tegner sig for følgende mængdeværdier:
- En: Bruges til entalsformer (f.eks. én genstand).
- Andet: Bruges til flertalsformer (f.eks. nul elementer, to elementer, tre elementer).
Engelsk kræver kun "et" og "andet", men andre sprog har flere klassifikationer. For at administrere dette giver Android et tag i strings.xml. Android understøtter tags for nul, én, to, få, mange og andet. Her er eksempler på sprog, der bruger hvert tag:
- Arabisk anvender en særlig grammatisk aftale for nul.
- Russisk behandler ethvert tal, der ender på "1", anderledes, medmindre det ender på "11".
- Welsh bruger en distinkt pluralisering, når der er to af noget.
- Sprog som tjekkisk og maltesisk skelner mellem små tal og store.
- Kineserne gør ingen forskel.
Sådan henter og formaterer du den pluraliserede streng i Kotlin:
val itemCount = 3
val message = resources.getQuantityString(R.plurals.item_count, itemCount, itemCount)
I denne kode, R.plurals.item_count er flertalsressource-id'et. Den første vareantal vælger flertalsstrengen baseret på flertalsreglerne for enhedens lokalitet, og den anden itemCount erstatter %d pladsholderen.
For eksempel, her er output for engelsk:
- For itemCount = 1: "1 vare"
- For itemCount = 3: "3 items"
-
Brug pladsholdere til dynamiske værdier
Apps viser ofte personligt eller dynamisk indhold, såsom en brugers navn eller antallet af notifikationer, de har. I stedet for at hardkode dette indhold, kan du bruge pladsholdere i dine strenge, som sådan:
<resources>
<string name="welcome_message">Velkommen, %1$s! Du har %2$d nye beskeder.</string>
</resources>
Sådan fungerer det:
- %1$s er en pladsholder for en streng (som et navn).
- %2$d er en pladsholder for et tal (som meddelelsesantallet).
Når appen kører, erstattes disse pladsholdere dynamisk med værdier input fra brugeren og deres dynamiske data.
-
Tilføj kontekstuelle tip
Oversættere ved ikke altid, hvordan en streng bruges i din app. For eksempel kan et ord som "menu" betyde en rulleliste, en restaurants madliste eller en indstillingsside. For at undgå forvirring kan du tilføje kommentarer direkte i din strings.xml:
<?xml version="1.0" encoding="utf-8"?>
<resources>
<!-- This string is used as a label for the navigation menu →
<string name="menu_label">Menu</string>
<!-- This string is used for the settings button in the app →
<string name="settings_label">Settings</string>
</resources>
Disse noter fortæller oversætteren, at ordet "menu" refererer til en navigationsfunktion i appen, ikke en restaurantmenu.
Test af lokalisering i Android
Det er afgørende at teste din lokaliserede Android-app for at sikre, at den fungerer på tværs af forskellige sprog og regioner. Ved at teste på emulatorer og rigtige enheder kan du fange problemer og levere en app, der føles naturlig og funktionel for brugere over hele verden.
Hvorfor teste på rigtige enheder?
Rigtige enheder giver den nærmeste simulering af, hvordan brugere vil interagere med din app. De viser dig, hvordan oversat tekst ser ud på en faktisk telefonskærm – uanset om den er for lang eller afskåret.
Hvorfor teste med emulatorer?
Emulatorer er en praktisk måde at teste din app på tværs af adskillige konfigurationer. De lader dig hurtigt skifte mellem sprog og regioner for at kontrollere oversættelser, layoutjusteringer og brugergrænsefladeadfærd.
Ved at kombinere begge metoder kan du bevare optimal funktionalitet og brugeroplevelse på tværs af flere sprog og lokaliteter.
Sådan bruger du Smartling til Android-lokalisering
Smartling tager kompleksiteten ud af Android-lokalisering. Med AI-drevne værktøjer, sømløse Android XML-filintegrationer og et team af ekspertoversættere tilbyder Smartling flere tjenester til at strømline hele oversættelsesprocessen fra start til slut og automatisere manuelle arbejdsgange.
Din virksomhed kan udnytte Smartlings automatiseringssystemer og datadrevne indsigter til at lokalisere hurtigere og opretholde brandkonsistens på tværs af globale markeder, og overgå dine konkurrenter og samtidig give en uovertruffen brugeroplevelse.
Klar til at lokalisere smartere, ikke sværere? Download vores gratis e-bog, "10 strategier til at øge oversættelseseffektiviteten.” Du lærer, hvordan du forbedrer oversættelseshastigheden, -kvaliteten og -omkostningerne med handlingsrettede strategier og eksempler fra den virkelige verden.
Tags: Hjemmesider og webapplikationer Blog