Android P blokuje instalację niestandardowych nakładek (motywów podłoża).

Została wydana najnowsza wersja Androida (Android 9.0 w postaci Android P Developer Preview 1) dla Google Pixel, Google Pixel XL, Google Pixel 2 i Google Pixel 2 XL oraz blokuje niestandardowe nakładki (motywy Substratum) zainstalowany.

Aktualizacja o 22:05 CST 3/8/18: członek naszej społeczności złożył prośbę o dodanie funkcji w oficjalnym narzędziu do śledzenia problemów Google. Jest to właściwa metoda zwrócenia uwagi Google. Rozmawialiśmy z programistami Substratum i oni również poprzeją tę prośbę. Proszę o gwiazdkę, ale NIE KOMENTUJ ta strona jeśli poprzesz tę prośbę.

Pojawiła się pierwsza wersja deweloperska Androida P wydany dzisiaj dla Google Pixel, Google Pixel XL, Google Pixel 2 i Google Pixel 2 XL. Jest ich ogromna ilość zmiany interfejsu użytkownika i jakości życia udokumentowaliśmy tutaj, ale jest jedna ukryta zmiana, która nie sprawi, że będziesz zadowolony: na Androidzie P nie można już instalować niestandardowych nakładek. To znaczy nigdy więcej podłoża bez korzeni. Nigdy więcej niestandardowych motywów. Wszystko przepadło.

Dla tych, którzy nie wiedzą, w Androidzie Oreo wprowadzono usługę Overlay Manager Service (OMS) firmy Sony, którą można sterować za pomocą polecenia ADB. Korzystając ze sprytnej sztuczki, twórcy popularnej aplikacji silnika motywów Substratum opracowali dodatek o nazwie Andromeda, który umożliwia Substratum stosowanie motywów bez konieczności dostępu do konta root. Było to niesamowite osiągnięcie, ponieważ po raz pierwszy na Androida firmy Google można było nałożyć motyw bez konieczności instalowania niestandardowej pamięci ROM lub rootowania w celu zastąpienia plików systemowych. Korzystając z Andromedy, użytkownicy mogli zainstaluj ciemny motyw, zmień emoji w niektórych aplikacjach, dostosować ikony paska nawigacji, ekran blokady, miniatury ostatnich aplikacji, szybkie ustawienia, I wiele więcej.

Android P implementuje to, co naszym zdaniem będzie się nazywać Projektowanie materiałów 2i jest jaśniej niż kiedykolwiek. Jesteśmy przekonani, że mnóstwo ludzi będzie szukać sposobów na tematyczne urozmaicenie różnych aspektów gry.

Jeśli jednak spróbujesz zainstalować niestandardową nakładkę w systemie Android P, pojawi się następujący komunikat logcat:

1239 W PackageManager: Package couldn't be installed in /data/app/com.dropbox.android.SwiftDark.Android81NexusorPixel-wb7JxFaAXaHgw7WkZFCvEQ==
03-07 21:00:13.099 1179 1239 WPackageManager: com.android.server.pm.PackageManagerException: Overlaycom.dropbox.android.SwiftDark.Android81NexusorPixelmustbesignedwiththeplatformcertificate.

To znaczy że będą mogły działać tylko nakładki zainstalowane przez system. Jest to zachowanie podobne do silnik motywów w Razer Phonei niezwykle rozczarowujące jest to, że dzieje się to teraz w systemie Android P.

Potwierdziłem to zachowanie na swoim urządzeniu. Zanim zaktualizowałem Google Pixel 2 XL do Androida P, wyłączyłem wszystkie nakładki Substratum, aby mieć pewność, że aktualizacja przebiegnie sprawnie. Po aktualizacji zauważyłem, że wszystkie zainstalowane nakładki nie są już wyświetlane w „cmd overlay list" Komenda. Rozmawiałem z głównymi programistami Substratum i potwierdziłem, że inni borykali się z tym samym zachowaniem. Innymi słowy, wydaje się, że jest to celowa zmiana ze strony Google.

Niestety, zmiany te odczują także użytkownicy z uprawnieniami roota. Nie można po prostu „wymusić” zainstalowania nakładki i oczekiwać, że zadziała, ponieważ niezgodność certyfikatu platformy nadal będzie problemem. Prawdopodobnie plik framework.jar będzie musiał zostać załatany, aby pozbyć się tego wymagania. Niestandardowe ROM-y byłyby oczywiście w stanie dokonać tego rodzaju zmian, ale nierootowani użytkownicy nie.

W przypadku płacących klientów dodatku Andromeda do Substratum zespół Substratum twierdzi, że framework Andromeda jest wciąż w fazie prac, więc Wasze pieniądze nie zostaną wydane na próżno. Zespół spróbuje rozpatrzyć petycję w nadziei, że społeczność wyrazi swoje zdanie niezadowolenie z tego posunięcia, ale ostatecznie decyzja należy do Google, czy to cofnąć ta zmiana.