W listopadzie 2022 r. wycofaliśmy metody działania aparatu w pakiecie ARCore SDK na Androida (Kotlin/Java)

W listopadzie 2022 r. Usługi Google Play dla AR usuną wycofane metody związane z obrazami i metadanymi aparatu NDK.

Aplikacje korzystające z tych metod w dotkniętych wersjach pakietu SDK ARCore mogą zacząć działać inaczej lub ulec awarii, gdy użytkownicy zaktualizują Usługi Google Play dla AR.

Aplikacje, których dotyczy problem

Od listopada 2022 r. Twoja aplikacja może przestać działać lub ulec awarii, gdy użytkownicy zaktualizują Usługi Google Play dla AR do najnowszej wersji, jeśli:

  1. Twoja aplikacja została skompilowana z dotkniętym problemem pakietem SDK
  2. Twoja aplikacja używa któregoś z tych interfejsów API:
Jeśli aplikacja została skompilowana z 
wersją pakietu ARCore…
Używa też tych interfejsów API: Zmiana zachowania w listopadzie 2022 r.
1.19.0 lub starsza Frame.getImageMetadata() Wyrzuca IllegalArgumentException.
1.10.0 lub starsza Frame.acquireCameraImage() Zwraca obraz o rozmiarze 0 x 0.

Naprawianie aplikacji, których dotyczy problem

W listopadzie 2022 r. aplikacje, których dotyczy problem, mogą przestać działać. Aby temu zapobiec, ponownie skompiluj aplikację za pomocą najnowszej wersji pakietu ARCore SDK. Musisz co najmniej zaktualizować pakiet ARCore SDK do wersji 1.20.0 lub nowszej.

Sprawdź, czy problem został rozwiązany w aplikacji

Przetestuj aplikację, symulując zmiany z listopada 2022 r., dodając do niej specjalny wpis meta-data do AndroidManifest.xml:

  1. Upewnij się, że na urządzeniu docelowym są zainstalowane Usługi Play dla AR w wersji 1.29.0 lub nowszej.
  2. Dodaj nowy tag <meta-data> jako element podrzędny dotychczasowego elementu <application> w pliku AndroidManifest.xml aplikacji:

    <application …>
        <!--
           Simulate the November 2022 changes in advance.
           IMPORTANT: Remove this tag when testing is completed.
           Do not include this tag in published versions of your app.
      -->
      <meta-data android:name="com.google.ar.core.session_settings"
                 android:value="camera_stack_option,unified_mono" />
    </application>
    
  3. przetestuj aplikację i upewnij się, że wszystkie funkcje ARCore działają prawidłowo;

  4. Po zakończeniu testowania usuń tag <meta-data>. Pozostawienie tego tagu w opublikowanej aplikacji może spowodować nieoczekiwane zachowanie w przyszłości.

Jeśli aplikacja działa prawidłowo, jest gotowa na zmiany, które wprowadzimy w listopadzie 2022 r.

Oś czasu

Okres Wydarzenia
listopad 2020 r.
(ARCore SDK w wersji 1.20.0)
wycofać natywne interfejsy API;
Zaktualizuj implementację, aby używać alternatywnych natywnych interfejsów API.
Listopad 2021 r. Ogłosić przyszłą zmianę ze względu na planowane usunięcie implementacji interfejsów API w Usługach Google Play dla AR w listopadzie 2022 r.
Listopad 2022 r. Usuń implementację interfejsów API, których dotyczy problem, z Usług Google Play dla AR.
Wprowadzamy istotną zmianę w przypadku aplikacji korzystających z wersji ARCore starszych niż 1.20.0.