Was ist Inhalts-Targeting nach Land?
Beim Asset-Targeting nach Land können Sie verschiedene Versionen (z. B. Auflösungen) desselben Assets auf Geräten je nach Land wo sich die Nutzenden befinden. Sie können beispielsweise maßgeschneiderte in verschiedenen Ländern verfügbar, in denen Ihre App verfügbar ist. die Spielgröße insgesamt erhöht, indem nur die notwendige Assets für die Geräte. Dies baut auf dem Konzept der Asset-Packs in der Asset Delivery von Google Play Wie Sie sehen, können Sie die Ausrichtungskriterien mit bis zu 20 Ländern, festgelegt. In diesem Zusammenhang ist das Geräteland Diese wird in der Regel anhand der Rechnungsadresse ermittelt, die in ihrem Google-Konto hinterlegt ist. Google Play-Konto.
Wie bei Play Asset Delivery wird auch beim Targeting nach Ländern Android 4.1 (API-Level) unterstützt. 16) und höher. Auf Geräten mit Android 4.4 (API-Level 19) oder niedriger wird das standardmäßig festgelegte Land unabhängig vom Standort des Nutzers ausgeliefert.
Vorgehensweise für Entwickler
Um die länderbasierte Ausrichtung in Ihr Spiel zu integrieren, führen Sie die folgenden Schritte aus:
- Länderspezifische Ausrichtung (und damit Play Asset Delivery) integrieren
innerhalb deines Spiels
<ph type="x-smartling-placeholder">
- </ph>
- Integriere Play Asset Delivery in dein Spiel (falls du noch bereits erledigt haben)
- Assets in Asset-Packs aufteilen
- Verpacken Sie Code und Assets, um die finale Android App Bundle-Artefakt, das Sie bei Google Play hochladen
- Konfiguration für die Ausrichtung auf Geräte erstellen, damit Google Play
wie Assets auf Nutzergeräten bereitgestellt werden.
- Richten Sie die Google Play Developer API ein (falls noch nicht geschehen) Damit senden Sie die Targeting-Konfigurationen an Google Play.
- Führen Sie die Schritte zum Erstellen der Targeting-Konfiguration aus.
- Lade dein AAB bei Google Play hoch und teste, ob alles funktioniert richtig konfiguriert
Gradle wird als Build-System für Java und native Spiele empfohlen. So konfigurieren Sie das Build-System für Spiele, die mit Gradle erstellt wurden um Ihr AAB mit Unterstützung für die Länderausrichtung zu erweitern.
Wenn Sie Ihr Spiel nach Gradle exportieren, schließen Sie den Build dort ab. folgen Sie diesen Anweisungen (z. B. Unity-Spiele nach Gradle exportiert.
Richten Sie in Ihrer App Asset-Ausrichtung nach Land ein
Integration von Play Asset Delivery in dein Spiel (falls noch nicht abgeschlossen)
Mit Play Asset Delivery (PAD) kannst du die Assets bei der Installation oder Laufzeit und Sie können einen Überblick. Mit mit der Ausrichtung nach Land, liefert Google Play die Inhalte Ihrer Asset-Packs zu den Länderkonfigurationen, die Sie für verschiedene Nutzerstandorte vorgeschrieben haben. Es wird empfohlen, der Anleitung unten zu folgen und PAD in Ihr Spiel (z.B. Asset-Packs erstellen, Abruf in Ihrem Spiel implementieren), und ändern Sie dann den Projektcode, um die Ausrichtung nach Land zu aktivieren.
Logo: Gradle
Folgen Sie bei Spielen, die mit Gradle erstellt wurden, dieser Anleitung für Erstellen von Asset-Packs mit Gradle Folgen Sie dann der Anleitung zum Integrieren des Asset-Pack-Abrufs innerhalb deines Spiels:
- Java
- Nativ
- Unity-Spiele nach Gradle exportiert
<ph type="x-smartling-placeholder">
- </ph>
- Java-Bibliotheken verwenden über die JNI (z. B. die in Unity integrierte Lösung).
Länderspezifische Verzeichnisse erstellen
Bei Verwendung von Gradle
Sie teilen nun Ihre Assets auf die Ländergruppen auf (max. 20), definieren können. Erstellen Sie Ihre Zielverzeichnisse, indem Sie die vorhandenen Asset-Set-Verzeichnisse erstellen, die im letzten Schritt erstellt wurden, und anschließend, entsprechenden Ordner (wie unten beschrieben) mit den Attributen #countries_latam, #countries_na, Wenn Sie die Asset-Packs in Ihrem Spiel verwenden, nach postfix (mit anderen Worten, das Postfix wird automatisch während des Build-Prozesses entfernt werden).
Nach dem vorherigen Schritt könnte das so aussehen:
...
.../level1/src/main/assets/character-textures#countries_latam/
.../level1/src/main/assets/character-textures#countries_na/
.../level1/src/main/assets/character-textures/
...
Wenn Sie auf die Dateien im Ordner zugreifen, können Sie einfach dasselbe Verzeichnis
ohne Beitragskorrektur (in diesem Beispiel würde ich als
level1/assets/character-textures/
ohne Postfixes).
Android App Bundle erstellen
Logo: Gradle
Konfigurieren Sie in der Datei build.gradle
Ihres Projekts die Abhängigkeiten so, dass
die Versionen unten (oder höher) für
Android-Gradle-Plug-in und
bundletool:
buildscript {
dependencies {
classpath 'com.android.tools.build:gradle:8.1.0-alpha01'
classpath "com.android.tools.build:bundletool:1.14.0"
...
}
...
}
Außerdem müssen Sie Ihre Gradle-Version auf 8.0 oder höher aktualisieren.
Du kannst dies in den gradle/wrapper/gradle-wrapper.properties
aktualisieren
innerhalb Ihres Projekts.
distributionUrl=https://services.gradle.org/distributions/gradle-8.0-rc-1-all.zip
Zum Schluss müssen Sie die Asset Delivery Library von Play verwenden. wenn Sie noch monolithische Play Core Library auf Version 1.8.3 oder höher aktualisieren. Wir empfehlen, zur Play Asset Delivery Library wechseln und auf die neueste Version aktualisieren wenn möglich.
dependencies {
implementation 'com.google.android.play:asset-delivery:2.0.1'
...
}
Aktiviere in der Datei build.gradle
des Hauptmoduls die Länder-Targeting-Aufteilung:
android {
bundle {
countrySet {
enableSplit true
}
...
}
...
}
Schließlich können Sie Ihr Android App Bundle (AAB) erstellen.
Bündeltool
Sets mit Bundletool zusammen
und
während Sie Ihr AAB anpassen,
Fügen Sie Ihrer BundleConfig.pb
-Datei Folgendes hinzu:
{
...
"optimizations": {
"splitsConfig": {
"splitDimension": [
...
{
"value": "COUNTRY_SET",
"negate": false,
"suffixStripping": {
"enabled": true,
}
}],
}
}
}
Lokale Tests
Bevor Sie fortfahren, sollten Sie Ihr App Bundle lokal testen,
überprüfen Sie, ob alles korrekt eingerichtet ist. Mit
bundletool
(1.14.0 oder höher), Sie
Ihre App lokal erstellen und testen und dabei das richtige Land angeben.
Zuerst verwenden Sie
build-apks
zum Generieren eines
.apks
-Dateien herunterladen und die App dann auf einem verbundenen Gerät bereitstellen
mit install-apks
.
Sie können auch über die
Flag country-set
. Weitere Informationen zu dieser Methode
hier (Hinweis:
diese Seite wurde noch nicht für die Länderausrichtung aktualisiert und fehlt daher
Flag country-set
).
bundletool build-apks --bundle=/path/to/app.aab --output=/path/to/app.apks --local-testing
bundletool install-apks --apks=/path/to/app.apks --country-set=latam
Alternativ: Sie können auch
extract-apks
zum Extrahieren:
Satz von APKs für ein bestimmtes Gerät Mit
get-device-spec
zusammen mit dem Land für dieses Gerät,
funktionieren nicht in Verbindung mit dem Flag --local-testing
. Sie können also
Schnell-Follow- oder On-Demand-Asset-Packs testen können.
bundletool get-device-spec --output=/path/to/device-spec.json --country-set=latam
bundletool extract-apks --apks=/path/to/existing_APK_set.apks --output-dir=/path/to/device_specific_APK_set.apks --device-spec=/path/to/device-spec.json
Konfiguration für die Ausrichtung auf Geräte über die Google Play Developer API erstellen
Erste Schritte mit der Google Play Developer API (falls noch nicht abgeschlossen)
Um die länderbasierte Ausrichtung zu konfigurieren (d.h. Ihre Ländereinstellungen festzulegen), gehen Sie wie folgt vor: müssen Sie den Android Publisher API um Ihre Konfiguration bei Google Play hochzuladen. Weitere Informationen zur API finden Sie unter oben klicken. Es gibt einige die ersten Schritte:
- Erstelle bei Bedarf dein API-Projekt und verknüpfe es mit der Google Play Console.
- API-Zugriffsclient einrichten
Sie finden die API-Referenz, hier - Wenn Sie später Ihren Build über die API hochladen, mithilfe der Bearbeitungsmethoden: Außerdem wird empfohlen, diese Seite ansehen bevor Sie die API verwenden.
Konfigurations-API für das Geräte-Targeting verwenden
Mit dem folgenden API-Aufruf können Sie die Konfiguration für die Ausrichtung auf Geräte erstellen:
Konfiguration für Ausrichtung auf Geräte erstellen
HTTP-Anfrage | POST https://androidpublisher.googleapis.com/androidpublisher/v3/applications/{packageName}/deviceTierConfigs |
Pfadparameter | – |
Anfragetext | Konfiguration für die Ausrichtung auf Geräte |
Antworttext | Konfiguration für die Ausrichtung auf Geräte |
Konfigurationsobjekt für die Ausrichtung auf Geräte
{
"user_country_sets": [
{
"name": "latam",
"country_codes": [
"AR",
"BR",
...
]
},
{
"name": "sea",
"country_codes": [
"VN",
"TW",
...
]
}
]
}
Felder:
- device_confid_id (Ganzzahl): ID für dieses Gerät Targeting-Konfiguration.
- user_country_sets (Objekt): Ländergruppendefinitionen
<ph type="x-smartling-placeholder">
- </ph>
- name (String): Der Name der Länderauswahl (eine von Ihnen definierte String-ID).
- country_codes (String): Länder, die zu dieser Ländergruppe gehören (Format: ISO 3166-1 alpha-2).
Folgen Sie der Anleitung unten für Ihre Konfiguration für die Ausrichtung auf Geräte zu validieren, bei Google Play hochladen.
Konfiguration für Ausrichtung auf Geräte nach ID abrufen
Sie können eine bestimmte Konfiguration für das Targeting auf Geräte anhand der ID abrufen. Verwenden Sie dazu den folgenden Aufruf:
HTTP-Anfrage |
GET https://androidpublisher.googleapis.com/androidpublisher/v3/applications/{packageName}/deviceTierConfigs/{deviceTierConfigId}
|
Pfadparameter | – |
Anfragetext | – |
Antworttext | Konfiguration für die Ausrichtung auf Geräte |
Liste der Konfigurationen für die Ausrichtung auf Geräte abrufen
Mit dem folgenden Aufruf können Sie die letzten zehn Konfigurationen für die Ausrichtung auf Geräte abrufen. Sie können auch einen Satz von zehn sollen mithilfe des Abfrageparameters page_token angeben:
HTTP-Anfrage | GET https://androidpublisher.googleapis.com/androidpublisher/v3/applications/{packageName}/deviceTierConfigs |
Pfadparameter | – |
Abfrageparameter | page_token (optional): Wird verwendet, um ein Token anzugeben. Gruppe von 10 DTCs fest. Dies ist nützlich, wenn Sie mehr als zehn DTCs vorhanden sind, und wir würden gerne sehen, welche DTCs erstellt wurden, vor den letzten 10. |
Anfragetext | – |
Antworttext | Liste der Konfigurationen für die Ausrichtung auf Geräte
page_token |
Konfiguration der Ausrichtung auf Geräte validieren
bundletool
enthält zwei Befehle, mit denen Sie prüfen können, ob Ihr Gerät
Die Targeting-Konfiguration funktioniert vor dem Hochladen in Google Play wie vorgesehen.
Mit bundletool print-device-targeting-config
können Sie prüfen, ob Ihre JSON-Datei
syntaktisch korrekt ist.
bundletool print-device-targeting-config --config=mydtc.json
Mit bundletool evaluate-device-targeting-config
können Sie auswerten,
die für ein bestimmtes Gerät gelten. Sie können dem Nutzer
durch die Flagge --country-code
.
bundletool evaluate-device-targeting-config --config=mydtc.json --connected-device --country-code=AR
Android App Bundle bei Google Play hochladen
Über API
Du kannst dein Android App Bundle mit der Google Play Developer API hochladen mit Google Play verknüpft und eine bestimmte Konfiguration für die Ausrichtung auf Geräte Ihren Build.
Es gibt eine
Allgemeine Übersicht über die Bearbeitungsmethoden,
zusammen mit
genauere Beispiele für Veröffentlichungen in den verschiedenen Tracks in der Google Play Console
(Für den letzten Link verwenden Sie die Methode
AAB-freundliche APIs
anstelle des
APK-freundliche API
die auf der Seite aufgeführt sind). So legen Sie die Konfiguration für das Geräte-Targeting fest für
Ihrem Build hinzufügen, fügen Sie dem deviceTierConfigId
die Konfigurations-ID hinzu.
Abfrageparameter
edits.bundle.upload
-Methode so:
https://androidpublisher.googleapis.com/upload/androidpublisher/v3/applications/{packageName}/edits/{editId}/bundles?deviceTierConfigId="{deviceTierConfigId}
Über die Google Play Console
Eine Anleitung dazu finden Sie hier. um dein Android App Bundle hochzuladen. Die neueste DTC-Konfiguration ist auf Ihr App Bundle angewendet.
Überprüfen, ob die richtigen Assets bereitgestellt werden
Verwenden Sie die folgende Methode, um sicherzustellen, dass nur die richtigen Assets bereitgestellt werden zum Gerät
adb shell pm path {packageName} |
Die Ausgabe sollte etwa so aussehen:
package:{...}/base.apk
package:{...}/split_config.en.apk
package:{...}/split_config.xxhdpi.apk
package:{...}/split_main_asset.apk
package:{...}/split_main_asset.config.countries_latam.apk
Zusatz
Schnellstart mit Curl
Nachfolgend sehen Sie ein Beispiel mit dem curl-Befehlszeilentool Erstellen einer neuen Konfiguration für die Ausrichtung auf Geräte und Erstellen Sie mit der Edits API eine neue Änderung, laden Sie ein neues AAB hoch (durch Verknüpfung mit einer bestimmten Konfiguration für das Geräte-Targeting), legen Sie die Konfiguration für Tracks/Releases fest und übernehmen Sie den Commit. der Änderung. (damit die Änderung öffentlich gemacht wird). Achten Sie darauf, Standort von:
- Den Schlüssel für Ihren API-Client
- Der Paketname Ihrer App
Erstellen Sie zunächst eine Konfiguration für die Ausrichtung auf Geräte und notieren Sie sich die
deviceTierConfigId
, die Sie bei einem erfolgreichen Anruf erhalten.
curl -H "$(oauth2l header --json $HOME/{apiKey} androidpublisher)" -XPOST -H "Content-Type: application/json" -d "{ "user_country_sets": [ { "name": "latam", "country_codes": [ "AR", "BR" ] }, { "name": "sea", "country_codes": [ "VN", "TW" ] } ] }" https://androidpublisher.googleapis.com/androidpublisher/v3/applications/{packageName}/deviceTierConfigs
Bearbeitung starten erhalten Sie eine ID und eine Ablaufzeit für die Änderung. Speichern Sie die ID für die folgenden Anrufen.
curl -H "$(oauth2l header --json $HOME/{apiKey} androidpublisher)" -XPOST https://androidpublisher.googleapis.com/androidpublisher/v3/applications/{packageName}/edits
Laden Sie das AAB hoch, Angabe der Konfiguration für das Geräte-Targeting als Suchparameter, falls der Aufruf erfolgreich war, sehen Sie den Versionscode, sha1 und sha256, des Builds. Speichern den Versionscode für den nächsten Aufruf.
curl -H "$(oauth2l header --json $HOME/{apiKey} androidpublisher)" --data-binary @$HOME/{aabFile} -H "Content-Type: application/octet-stream" -XPOST https://androidpublisher.googleapis.com/upload/androidpublisher/v3/applications/{packageName}/edits/{editID}/bundles?deviceTierConfigId="{deviceTargetingConfigID}"
AAB dem gewünschten Track zuweisen Wir empfehlen für Tests den internen Test-Track. Sie können weitere Informationen zu den verschiedenen Tracks), führen wir ein einfaches Roll-out ohne Versionshinweise durch. Sie können diese Seite lesen finden Sie weitere Informationen zu gestaffelten Roll-outs, Versionsentwürfen und Versionshinweisen. Wenn Sie die Publisher API zum ersten Mal verwenden, sollten Sie als Versionsentwurf und die Fertigstellung des Release auf Ihrem Google Play Console, um zu prüfen, ob alles richtig konfiguriert wurde.
curl -H "$(oauth2l header --json $HOME/{apiKey} androidpublisher)" -XPUT -H "Content-Type: application/json" -d "{ releases: [{status: '{status}'</code>, <code><strong>versionCodes</strong></code>: <code>['{versionCode}']</code> <code><strong>}]}</strong></code>" <code>https://androidpublisher.googleapis.com/androidpublisher/v3/applications/{packageName}/edits/{editID}/tracks/{track}
Commit für Änderungen durchführen (Achtung: Da dadurch alle Änderungen bei Google Play veröffentlicht werden in den gewünschten Track)
curl -H "$(oauth2l header --json $HOME/{apiKey} androidpublisher)" -XPOST https://androidpublisher.googleapis.com/androidpublisher/v3/applications/{packageName}/edits/{editID}:commit