Chcę się nauczyć podstaw Androida, więc idę wg oficjalnego podręcznika:
https://developer.android.com/training/basics/firstapp/creating-project
Kiedy tworzę nowy projekt, mimo że wcześniej zostawiam domyślne API 16 (Android 4.1), do wyboru do zainstalowania mam tylko API 31 (Android 12). Wszystko się pobiera, buduję i pierwszy problem, którego rozwiązanie jest tu:
Zmieniam nazwy tych 2 plików i projekt się znów nie buduje, bo activity musi mieć w manifeście jawnie android:exported="false"
. Teraz się buduje. No to chcę odpalić. Pobieram emulator (na liście max wersja API 30), odpalam, ale apka nie chce się zainstalować. To samo próbuję na emulatorze API 31.
11/24 17:47:39: Launching 'app' on Pixel 4 XL API 31.
Install successfully finished in 940 ms.
$ adb shell am start -n "com.example.myapplication/com.example.myapplication.MainActivity" -a android.intent.action.MAIN -c android.intent.category.LAUNCHER
Timed out waiting for process (com.example.myapplication) to appear on Pixel_4_XL_API_31 [emulator-5556].
Druga rzecz to chcę obsługiwać starsze telefony (sam mam Androida 6.0.1) i okazuje się, że Google Play wymaga targetSdkVersion
minimum 29 (Android 10). Tu jest to dobrze wyjaśnione i to wcale nie oznacza, że apka nie ruszy na starszych wersjach:
A tak naprawdę to na jakich ustawieniach tworzyć aplikacje, żeby wszystko bezproblemowo działało na starszych urządzeniach?