Kierowanie zasobów według kilku wymiarów (kierowanie zagnieżdżone)

Aby kierować folder w pakiecie komponentów lub module pakietu według kilku wymiarów (format kompresji tekstur, poziom urządzenia, zestaw krajów), możesz użyć ukierunkowania zagnieżdżonego.

Kierowanie zagnieżdżone umożliwia zdefiniowanie kryteriów kierowania, które łączą maksymalnie 2 wymiary kierowania.

Format

Aby kierować reklamy na folder według wielu wymiarów, podaj listę wymiarów w serii hashtagów jako przyrostki nazwy folderu.

Na przykład kierowanie na folder zasobów według formatu kompresji tekstur (ASTC) i urządzenia poziomu 2. Kierowanie będzie wyglądać tak:

...
.../level1/src/main/assets/character-textures#tcf_astc#tier_2/
...

Jeśli do kompilowania aplikacji używasz Gradle, końcówki kierowania są usuwane z nazwy katalogu w końcowych plikach APK lub pakietach zasobów dostarczanych na urządzenia użytkowników.

Jeśli używasz bezpośrednio narzędzia bundletool, w polu BundleConfig.json określ, czy przyrostek ma zostać usunięty z każdego wymiaru oddzielnie. Przykład kierowania na kategorię urządzeń:

{
  ...
  "optimizations": {
    "splitsConfig": {
      "splitDimension": [
      ...
      {
        "value": "DEVICE_TIER",
        "negate": false,
        "suffixStripping": {
          "enabled": true,
      }],
    }
  }
}

Docelowy kierowanie jest obsługiwane w bundletool w wersji 1.14.1 lub nowszej oraz w Google Play w wersji 8.2.0-alpha01 lub nowszej, która wymaga Gradle 8.1 lub nowszej.

Więcej informacji o dostosowywaniu konfiguracji poszczególnych wymiarów znajdziesz w dokumentacji dotyczącej poszczególnych wymiarów kierowania.

Ograniczenia

  • Możesz użyć maksymalnie 2 zagnieżdżone wymiary. Innymi słowy, nie możesz jednocześnie ustawić folderu docelowego według typu urządzenia, formatu kompresji tekstur i kraju: musisz wybrać 2.

  • Musisz podać 2 zagnieżdżone wymiary na tym samym poziomie ścieżki folderu. Na przykład kierowanie na folder jest zabronione, ponieważ #tcf_astc i #tier_2 pojawiają się w różnych segmentach ścieżki:

.../level1/src/main/assets/character-textures#tcf_astc/level1#tier_2/
  • Wymiary zagłębione muszą być takie same w całym pakiecie. Nie możesz na przykład mieć pakietu zasobów, w którym zagnieżdżasz poziomy urządzeń i kraje, oraz innego pakietu zasobów, w którym zagnieżdżasz kraj i format kompresji tekstur.

  • Wartości, których używasz w przypadku tych 2 wymiarów, muszą być takie same w całym pakiecie, a Ty musisz podać pełną kombinację wartości. Jeśli na przykład chcesz zagnieżdżać format kompresji tekstur i ustawienie kraju, a masz 4 formaty TCF (ASTC, ETC2, PVRTC, domyślny fallback) i 3 ustawienia kraju (latam, sea, domyślny fallback), musisz określić folder dla wszystkich 12 kombinacji:

level1/textures#countries_latam#tcf_astc/…
level1/textures#countries_latam#tcf_etc2/…
level1/textures#countries_latam#tcf_pvrtc/…
level1/textures#countries_latam/…
level1/textures#countries_sea#tcf_astc/…
level1/textures#countries_sea#tcf_etc2/…
level1/textures#countries_sea#tcf_pvrtc/…
level1/textures#countries_sea/…
level1/textures#tcf_astc/…
level1/textures#tcf_etc2/…
level1/textures#tcf_pvrtc/…
level1/textures/…
  • Możesz używać zarówno kierowania zagnieżdżonego, jak i kierowania jednowymiarowego w różnych folderach treści w tym samym pakiecie zasobów lub module pakietu. Jeśli wymiar jest używany zarówno w kierowaniu jednowymiarowym, jak i w kierowaniu zagnieżdżonym, zestaw wartości, którego używasz, musi być zawsze taki sam. Nie możesz np. kierować reklam na 4 poziomy w ramach kierowania na poziomy urządzeń w jednym wymiarze, a potem używać tylko 3 poziomów w ramach zestawów krajów lub TCF.