Gry Google Play na PC wymagają wprowadzenia zmian w grze pod kątem zgodności z komputerami i optymalizacji. Dzięki tym zmianom gra będzie działać na komputerze PC, a wrażenia użytkownika będą zoptymalizowane pod kątem tej platformy.
Dodatkowo w Grach Google Play na PC obowiązują wymagania dotyczące grafiki, danych wejściowych i gry na różnych urządzeniach. Więcej informacji znajdziesz w przewodniku Pierwsze kroki.
Gdy wprowadzasz zmiany dotyczące zgodności z PC i optymalizacji (inne niż obsługa x86-64), możesz skonfigurować grę tak, aby wykrywała Gry Google Play na PC, a następnie wyłączyć lub włączyć funkcje związane z konkretną platformą. Dzięki temu możesz używać tego samego pliku APK lub pakietu aplikacji w wersjach na urządzenia mobilne z Androidem i na komputery.
.Oto podsumowanie wymagań i zaleceń na tej stronie:
- Uwzględnij interfejs ABI x86-64 (wymagane)
- Wykrywanie Gier Google Play w czasie działania aplikacji (zalecane)
- Obsługa zdarzenia onPause (zalecane)
- Aktualizowanie elementów interfejsu użytkownika (wymagane)
- Wyłączanie okienek z uprawnieniami aplikacji na Androida (wymagane)
- Wyłączanie funkcji i uprawnień niedostępnych na Androidzie (wymagane)
- Zastępowanie komponentów WebView za pomocą intencji przeglądarki (zalecane)
- Wyłączanie nieobsługiwanych interfejsów API usług Google Play (wymagane)
- Włącz ograniczone miejsce na dane (wymagane)
- Przejdź na Google Analytics 4 (zalecane)
Uwzględnij architekturę ABI x86-64
Wymagany przez proces wydania
Wszystkie biblioteki zawarte w grze wymagają wersji zgodnych z interfejsem ABI x86-64, aby zapewnić najlepszą wydajność i stabilność na platformie.
Jeśli z technicznego punktu widzenia nie jest możliwe, aby gra była dostarczana jako plik wykonywalny 64-bitowy x86, musisz skontaktować się z zespołem ds. sprawdzania, aby uzyskać odstępstwo. Twoja gra nie może uzyskać pełnej certyfikacji z wyjątkiem, ale może zostać umieszczona w katalogu jako „gra do wypróbowania”.
Kompilacja biblioteki
Aby zapewnić najlepszą zgodność z procesorami x86-64, podczas kompilowania bibliotek nie używaj zestawu instrukcji atom. Na przykład, gdy używasz właściwości gcc
, nie używaj właściwości -march=atom
, tylko -march=x86-64
.
Architektura docelowa w Unity
Niektóre wersje Unity 2019 i 2020 nie obsługują architektury x86-64 na Androidzie. Upewnij się, że używasz Unity w wersji 2019.4.31f1, 2020.3.19f1 lub nowszej.
Jeśli Twoja gra korzysta z kompatybilnej wersji silnika gier Unity, wykonaj te czynności, aby włączyć platformy Android x86-64:
Aby włączyć środowisko programistyczne do skryptowania IL2CPP, kliknij Ustawienia gracza > Inne ustawienia > Konfiguracja > Środowisko programistyczne do skryptowania i w menu kliknij IL2CPP.
Włącz platformy Android x86-64 w swojej wersji Unity:
Unity 2018 lub starsza wersja: otwórz Ustawienia odtwarzacza > Inne ustawienia > Architektura docelowa i zaznacz pole wyboru x86. Unity 2018 obsługuje tylko platformy x86, więc nie będzie można skompilować wersji x86-64. Ta kompilacja wymaga wyjątku od zespołu weryfikującego. Aby poprosić o wyjątek dla procesora x86, skontaktuj się z przedstawicielem Google.
Wersja Unity 2019 z wsparciem długoterminowym (LTS) lub nowsza: otwórz Ustawienia odtwarzacza > Inne ustawienia > Architektury docelowe i włącz x86-64 (ChromeOS).
Wykrywanie Gier Google Play na PC
Możesz wykrywać platformę Gry Google Play na PC w czasie działania, co pozwoli Ci włączać i wyłączać w grze funkcje związane z konkretną platformą.
Aby sprawdzić, czy gra działa na platformie Gry Google Play na PC, sprawdź, czy jest dostępna funkcja com.google.android.play.feature.HPE_EXPERIENCE
:
Kotlin
var isPC = packageManager.hasSystemFeature("com.google.android.play.feature.HPE_EXPERIENCE")
Java
PackageManager pm = getPackageManager(); boolean isPC = pm.hasSystemFeature("com.google.android.play.feature.HPE_EXPERIENCE")
C#
var unityPlayerClass = new AndroidJavaClass("com.unity3d.player.UnityPlayer"); var currentActivity = unityPlayerClass.GetStatic<AndroidJavaObject>("currentActivity"); var packageManager = currentActivity.Call<AndroidJavaObject>("getPackageManager"); var isPC = packageManager.Call<bool>("hasSystemFeature", "com.google.android.play.feature.HPE_EXPERIENCE");
Obsługa zdarzeń cyklu życia Androida
Ważne jest, aby obsłużyć zdarzenie onPause
(c++) w środowisku Gier Google Play na PC. Gra jest widoczna, gdy gracz aktywuje nakładkę emulatora, więc brak odbierania zdarzenia onPause
może pogorszyć wrażenia użytkownika.
Aktualizowanie interfejsu
Niektóre elementy interfejsu i gesty nie są odpowiednie na komputerze i powinny zostać zaktualizowane.
Wymagane:
- Zastąpić działania w interfejsie, które wymagają użycia co najmniej 2 palców (gesty wielodotykowe). Na przykład gest powiększania przez zbliżenie i inne gesty wielodotykowe należy zastąpić odpowiednimi poleceniami myszy i klawiatury. Szczegółowe informacje o zmianach dotyczących obsługi urządzeń znajdziesz w artykule Obsługa urządzeń.
Zalecane:
- W przypadku wszystkich tekstów widocznych dla użytkowników należy używać słowa „kliknij” zamiast „dotknij”.
- Lista, którą można przewijać, powinna mieć paski przewijania.
- Obszary, które użytkownicy mogą przesuwać, powinny mieć paski przewijania lub inny sposób szybkiego przemieszczania się na duże odległości.
- Nie wyświetlaj na ekranie klawiatury, na której można kliknąć, aby wpisać tekst.
- Wszystkie wpisy tekstowe powinny mieścić się w ramach pola tekstowego.
- Kliknięcia widocznych elementów powinny:
- Akceptowanie kliknięcia w dowolnym miejscu w widocznych granicach elementu.
- Nie akceptuje kliknięcia w obszarze poza widocznym elementem.
- Dialogi powinny mieć widoczny przycisk zamykania. Nie wykrywaj kliknięcia poza granicami okna.
Wyłączanie większości okien z uprawnieniami
Z wyjątkiem uprawnień do mikrofonu i powiadomień Gry Google Play na PC nie wyświetlają żadnych okien z uprawnieniami, więc nie próbuj ich wyświetlać ani prosić o uprawnienia w czasie działania. Jeśli wcześniej wyświetlałeś okna z prośbą o przyznanie uprawnień, zaktualizuj grę, aby nie wyświetlała ich już na komputerach.
Nieobsługiwane funkcje i uprawnienia Androida
Wymagany przez proces wydania
Niektóre typowe funkcje sprzętowe dostępne na telefonach i tabletach są niedostępne na komputerach PC. Obejmuje to funkcje sprzętowe, takie jak kamera czy lokalizacja gracza. Żadna gra, która wymaga brakujących funkcji, nie może zostać pobrana i zainstalowana na komputerze gracza. Prośby o funkcje, których brakuje na komputerze, są automatycznie odrzucane.
Aby wyświetlić pełną listę dostępnych funkcji, wpisz:
adb shell pm list features
Aby zapewnić zgodność gry z PC, musisz wprowadzić te zmiany:
Zrób: oznaczysz funkcje jako opcjonalne w pliku manifestu aplikacji, dodając
android:required="false"
do deklaracji<uses-feature>
. Dotyczy to tylko funkcji już zadeklarowanych w manifeście aplikacji.Nie próbuj używać brakujących funkcji w czasie wykonywania. Jeśli używasz tego samego pliku APK na ścieżkach mobilnej i PC, wykrywanie środowiska PC w czasie wykonywania i omijanie odpowiednich ścieżek kodu.
Nie żądaj nieobsługiwanych uprawnień Androida w czasie działania. Jeśli używasz tego samego pliku APK na ścieżkach na urządzenia mobilne i na komputery, wykrywanie środowiska komputera w czasie wykonywania i unikaj odpowiednich ścieżek kodu. Nie musisz aktualizować pliku manifestu.
Więcej informacji o zgodnosci pliku manifestu aplikacji znajdziesz w przewodniku Zgodność pliku manifestu aplikacji na Chromebooka.
Wymagania dotyczące testów funkcjonalnych
Przed przesłaniem pierwszego kompilacji testowej do Konsoli Google Play usuń te funkcje sprzętowe:
android.hardware.wifi
android.hardware.bluetooth
android.hardware.camera
android.hardware.location
Niektóre z tych funkcji mogą być wymienione jako obsługiwane podczas korzystania z wersji pm list features
ze względu na zgodność, ale nie są w pełni zaimplementowane. Więcej informacji o usuwaniu funkcji android.hardware.wifi
znajdziesz w artykule Monitorowanie stanu połączenia i pomiaru połączenia. Pełną listę funkcji niedostępnych na Chromebookach znajdziesz w przewodniku po zgodności pliku manifestu aplikacji na Chromebooki.
Wymagania dotyczące testowania jakości
Te często używane funkcje sprzętowe nie są zgodne z komputerami PC, dlatego musisz je usunąć przed ostatecznym przesłaniem do Konsoli Google Play:
android.hardware.audio.pro
android.hardware.bluetooth
android.hardware.camera
android.hardware.consumerir
android.hardware.location
android.hardware.nfc
android.hardware.sensor.light
android.hardware.sensor.accelerometer
android.hardware.sensor.barometer
android.hardware.sensor.compass
android.hardware.sensor.gyroscope
android.hardware.sensor.proximity
android.hardware.telephony
android.hardware.touchscreen
android.hardware.usb.accessory
android.hardware.usb.host
android.hardware.wifi
android.software.midi
Nieobsługiwane uprawnienia
Na komputerach nie są obsługiwane te często używane uprawnienia, dlatego Twoja gra musi je wyłączyć w Grach Google Play na PC:
android.permission.ACCESS_COARSE_LOCATION
android.permission.ACCESS_FINE_LOCATION
android.permission.ACCESS_WIFI_STATE
android.permission.BLUETOOTH
android.permission.CAMERA
android.permission.FOREGROUND_SERVICE
android.permission.GET_ACCOUNTS
android.permission.INSTALL_PACKAGES
android.permission.READ_CONTACTS
android.permission.READ_EXTERNAL_STORAGE
android.permission.READ_PHONE_STATE
android.permission.RECEIVE_BOOT_COMPLETED
android.permission.REQUEST_INSTALL_PACKAGES
android.permission.SYSTEM_ALERT_WINDOW
android.permission.USE_CREDENTIALS
android.permission.WRITE_EXTERNAL_STORAGE
android.permission.WRITE_SETTINGS
com.google.android.gms.permission.ACTIVITY_RECOGNITION
Zewnętrzne witryny i WebViews
Intencja przeglądarki wczytuje się w natywnym programie przeglądarki na komputerze, a nie w środowisku Gier Google Play na PC. Jest to idealna opcja dla graczy w większości sytuacji.
Aby ułatwić przenoszenie, Gry Google Play na PC obsługują WebView. Ponieważ aplikacja otwiera się w Gry Google Play na PC, nie będzie w niej typowej przeglądarki na komputer. Jeśli wcześniej używałeś(-aś) WebView
do udostępniania Warunków korzystania z usług, Polityki prywatności lub innych podobnych treści, powinieneś(-aś) zamiast tego wywoływać zamiar przeglądarki.
Wyłączanie nieobsługiwanych interfejsów API Usług Google Play
Wymagany przez proces wydania
Google Play Games na PC dostarcza własny wariant usług Google Play, który zawiera tylko podzbiór interfejsów API usług Google Play. Musisz potwierdzić, że aplikacja nie jest silnie zależna od modułów, które są pomijane lub nieobsługiwane na komputerach PC. Pamiętaj, że niektóre moduły mogą być dostępne, ale ich funkcje nie są obsługiwane przez cały czas. Na przykład Komunikacja w chmurze Firebase nie będzie działać, gdy Gry Google Play na PC są zamknięte.
Obsługiwane moduły
Te moduły są obecnie dostępne i obsługiwane przez Gry Google Play na PC. Planujemy dodać obsługę dodatkowych funkcji:
- Logowanie do Google (z wyjątkiem przenoszenia konta, SmartLock, weryfikacji SMS-em, obliczania złożoności hasła).
- Cronet
- Usługi gier Google Play
- Lista zadań
- Wizja
- Google Pay
Ograniczony zakres pomocy
Te moduły działają częściowo. Dołożymy wszelkich starań, aby obsługiwać je w Grach Google Play na PC, ale nie możemy zagwarantować ich funkcjonalności.
- Google Cloud Messaging (wycofana, użyj Komunikacji w chmurze Firebase)
- Uwierzytelnianie Firebase (uwierzytelnianie przez numer telefonu nie działa)
- Komunikacja w chmurze Firebase
- Firebase Common Libraries
- Firebase ML
- Zdalna konfiguracja Firebase
- Firebase Analytics
Nieobsługiwane
Te moduły nie są obsługiwane w Grach Google Play na PC, ale ich awarie nie powodują problemów w Grach Google Play na PC:
- Google Analytics (wycofane, użyj Firebase Analytics)
- Google Cast
- Awareness API
- Dysk (wycofany, wkrótce zostanie usunięty)
- FIDO
- Baza danych czasu rzeczywistego Firebase
- Firestore
- Testy A/B Firebase
- Google Fit
- Address API
- Interfejs API aplikacji błyskawicznych
- Location API
- Pakiet SDK Map Google
- W pobliżu
- Panorama
- Miejsca
- Google+
- SafetyNet (interfejs ten został wycofany. Aby wyrazić zainteresowanie interfejsem Play Integrity API, wypełnij formularz).
- Menedżer tagów Google
- Wear OS
Uszkodzony
Wymagany przez proces wydania
Nie używaj tych modułów na komputerach, ponieważ mogą one powodować nieoczekiwane działanie Gier Google Play na PC.
Włączanie ograniczonego miejsca na dane
Wymagany przez proces wydania
Ta sekcja ma zastosowanie, jeśli gra odczytuje lub zapisze dane w pamięci zewnętrznej. Wymóg stosowania magazynu jest wymagany jako alternatywny sposób odczytu i zapisu do magazynu. Dzięki temu nie musisz prosić gracza o te uprawnienia:
android.permission.READ_EXTERNAL_STORAGE
android.permission.WRITE_EXTERNAL_STORAGE
Więcej informacji o ograniczonym miejscu na dane:
Statystyki
Starsze usługi Google Analytics nie działają w Grach Google Play na PC. Jeśli dotyczy to Twoich gier, przenieś je do Google Analytics 4.
Ta zmiana powinna mieć wpływ na Twoją grę tylko wtedy, gdy obecnie używasz Google Analytics 360. Jeśli do śledzenia zdarzeń analitycznych w grze używasz pakietu SDK Firebase i możesz zobaczyć swoją grę jako usługę w konsoli Google Analytics, nie musisz podejmować żadnych dalszych działań.