Jeśli Twoja aplikacja implementuje niestandardowy ekran powitalny lub korzysta z motywu programu uruchamiającego, przenieś ją do biblioteki SplashScreen dostępnej w Jetpacku, aby mieć pewność, że będzie się prawidłowo wyświetlać we wszystkich wersjach Wear OS.
Na tej stronie znajdziesz szczegółowe instrukcje wdrażania, które pomogą Ci dodać ekran powitalny za pomocą SplashScreenbiblioteki w taki sposób, aby spełniał on wytyczne projektowe.
Dodawanie zależności
Dodaj tę zależność do pliku build.gradle modułu aplikacji:
Groovy
dependencies { implementation "androidx.core:core-splashscreen:1.2.0" }
Kotlin
dependencies { implementation("androidx.core:core-splashscreen:1.2.0") }
Aby uzyskać obsługę domyślnych wymiarów Wear OS, upewnij się, że używasz wersji 1.0.1 lub nowszej.
Dodawanie motywu
Utwórz motyw ekranu powitalnego w res/values/styles.xml. Element nadrzędny zależy od kształtu ikony:
- Jeśli ikona jest okrągła, użyj symbolu
Theme.SplashScreen. - Jeśli ikona ma inny kształt, użyj elementu
Theme.SplashScreen.IconBackground.
Użyj windowSplashScreenBackground, aby wypełnić tło jednym kolorem czarnym. Ustaw wartości postSplashScreenTheme na motyw, którego ma używać aktywność, a windowSplashScreenAnimatedIcon na element rysowalny lub animowany element rysowalny:
<resources> <style name="Theme.App" parent="@android:style/Theme.DeviceDefault" /> <style name="Theme.App.Starting" parent="Theme.SplashScreen"> <!-- Set the splash screen background to black --> <item name="windowSplashScreenBackground">@android:color/black</item> <!-- Use windowSplashScreenAnimatedIcon to add a drawable or an animated drawable. --> <item name="windowSplashScreenAnimatedIcon">@drawable/splash_screen</item> <!-- Set the theme of the Activity that follows your splash screen. --> <item name="postSplashScreenTheme">@style/Theme.App</item> </style> </resources>
Jeśli używasz ikony, która nie jest okrągła, musisz ustawić pod nią białe tło. W takim przypadku użyj Theme.SplashScreen.IconBackground jako motywu nadrzędnego i ustaw atrybut windowSplashScreenIconBackgroundColor:
<style name="Theme.App.Starting" parent="Theme.SplashScreen"> <!-- Set a white background behind the splash screen icon. --> <item name="windowSplashScreenIconBackgroundColor">@android:color/white</item> </style>
Pozostałe atrybuty są opcjonalne.
Tworzenie elementu rysowalnego dla motywu
Motywy ekranu powitalnego wymagają przekazania elementu rysowalnego do atrybutu windowSplashScreenAnimatedIcon. Możesz na przykład utworzyć go, dodając nowy plik res/drawable/splash_screen.xml i używając ikony programu uruchamiającego aplikację oraz prawidłowego rozmiaru ikony ekranu powitalnego:
<layer-list xmlns:android="http://schemas.android.com/apk/res/android"> <item android:width="@dimen/splash_screen_icon_size" android:height="@dimen/splash_screen_icon_size" android:drawable="@mipmap/ic_launcher" android:gravity="center" /> </layer-list>
Rozmiar ikony ekranu powitalnego jest zdefiniowany w res/values/dimens.xml i różni się w zależności od tego, czy ikona jest okrągła:
<resources> <!-- Round app icon can take all of default space --> <dimen name="splash_screen_icon_size">48dp</dimen> </resources>
…lub nie są okrągłe, więc muszą używać tła ikony:
<resources> <!-- Non-round icon with background must use reduced size to fit circle --> <dimen name="splash_screen_icon_size">36dp</dimen> </resources>
Określanie motywu
W pliku manifestu aplikacji (AndroidManifest.xml) zastąp motyw aktywności początkowej – zwykle tej, która definiuje element programu uruchamiającego lub jest w inny sposób eksportowana – motywem utworzonym w poprzednim kroku:
<activity android:name=".snippets.SplashScreenActivity" android:exported="true" android:taskAffinity="" android:theme="@style/Theme.App.Starting"> <!-- ... --> </activity>
Aktualizowanie aktywności początkowej
Zainstaluj ekran powitalny w działaniu początkowym przed wywołaniem super.onCreate():
class SplashScreenActivity : ComponentActivity() { override fun onCreate(savedInstanceState: Bundle?) { installSplashScreen() super.onCreate(savedInstanceState) setContent { WearApp() } } }
Dodatkowe materiały
Dowiedz się więcej o ekranach powitalnych i o tym, jak możesz ich używać w aplikacji.
Polecane dla Ciebie
- Uwaga: tekst linku jest wyświetlany, gdy język JavaScript jest wyłączony.
- Migracja implementacji ekranu powitalnego na Androida 12 i nowsze wersje
- Ekrany powitalne
- Integracja działań w aplikacji z widżetami na Androidzie