कीवर्ड: स्प्लैशस्क्रीन
अगर आपका ऐप्लिकेशन कस्टम स्प्लैश स्क्रीन लागू करता है या लॉन्चर थीम का इस्तेमाल करता है, तो अपने ऐप्लिकेशन को Jetpack में उपलब्ध SplashScreen
लाइब्रेरी पर माइग्रेट करें. इससे यह पक्का किया जा सकेगा कि यह Wear OS के सभी वर्शन पर सही तरीके से दिखे.
SplashScreen
लाइब्रेरी का इस्तेमाल करके स्प्लैश स्क्रीन जोड़ने का तरीका जानने के लिए, इस पेज पर सिलसिलेवार निर्देश देखें. इससे, स्क्रीन डिज़ाइन के दिशा-निर्देशों के मुताबिक बनेगी.
डिपेंडेंसी जोड़ें
अपने ऐप्लिकेशन मॉड्यूल की build.gradle
फ़ाइल में, यह डिपेंडेंसी जोड़ें:
ग्रूवी
dependencies { implementation "androidx.core:core-splashscreen:1.2.0-alpha02" }
Kotlin
dependencies { implementation("androidx.core:core-splashscreen:1.2.0-alpha02") }
Wear OS के डिफ़ॉल्ट डाइमेंशन के लिए सहायता पाने के लिए, पक्का करें कि आपके पास 1.0.1
या उसके बाद का वर्शन हो.
थीम जोड
res/values/styles.xml
में स्प्लैश स्क्रीन की थीम बनाएं. पैरंट एलिमेंट, आइकॉन के आकार पर निर्भर करता है:
- अगर आइकॉन गोल है, तो
Theme.SplashScreen
का इस्तेमाल करें. - अगर आइकॉन का आकार अलग है, तो
Theme.SplashScreen.IconBackground
का इस्तेमाल करें.
बैकग्राउंड को एक ही काले रंग से भरने के लिए, windowSplashScreenBackground
का इस्तेमाल करें. postSplashScreenTheme
की वैल्यू को उस थीम पर सेट करें जिसका इस्तेमाल गतिविधि को करना चाहिए और windowSplashScreenAnimatedIcon
को ड्रॉबल या ऐनिमेशन वाले ड्रॉबल पर सेट करें:
<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>
अगर किसी ऐसे आइकॉन का इस्तेमाल किया जाता है जो गोल नहीं है, तो आपको अपने आइकॉन के नीचे सफ़ेद रंग का बैकग्राउंड सेट करना होगा. इस मामले में, Theme.SplashScreen.IconBackground
को पैरंट थीम के तौर पर इस्तेमाल करें और windowSplashScreenIconBackgroundColor
एट्रिब्यूट सेट करें:
<style name="Theme.App.Starting" parent="Theme.SplashScreen.IconBackground">
...
<!-- Set a white background behind the splash screen icon. -->
<item name="windowSplashScreenIconBackgroundColor">@android:color/white</item>
</style>
अन्य एट्रिब्यूट की वैल्यू देना ज़रूरी नहीं है.
थीम के लिए ड्रॉआउट बनाएं
स्प्लैश स्क्रीन की थीम के लिए, windowSplashScreenAnimatedIcon
एट्रिब्यूट में ड्रॉ किए जा सकने वाले आइटम की ज़रूरत होती है. उदाहरण के लिए, इसे बनाने के लिए, एक नई फ़ाइल res/drawable/splash_screen.xml
जोड़ें. साथ ही, ऐप्लिकेशन लॉन्चर आइकॉन और स्प्लैश स्क्रीन आइकॉन का सही साइज़ इस्तेमाल करें:
<?xml version="1.0" encoding="utf-8"?>
<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>
स्प्लैश स्क्रीन के आइकॉन का साइज़ res/values/dimens.xml
में तय किया जाता है. यह आइकॉन के गोल होने या न होने के आधार पर अलग-अलग होता है:
<?xml version="1.0" encoding="utf-8"?>
<resources>
<!-- Round app icon can take all of default space -->
<dimen name="splash_screen_icon_size">48dp</dimen>
</resources>
...या गोल नहीं हैं. इसलिए, इनके लिए आइकॉन के बैकग्राउंड का इस्तेमाल करना ज़रूरी है:
<?xml version="1.0" encoding="utf-8"?>
<resources>
<!-- Non-round icon with background must use reduced size to fit circle -->
<dimen name="splash_screen_icon_size">36dp</dimen>
</resources>
थीम तय करना
अपने ऐप्लिकेशन की मेनिफ़ेस्ट फ़ाइल (AndroidManifest.xml
) में, शुरू होने वाली ऐक्टिविटी की थीम को बदलें. आम तौर पर, ये ऐसी ऐक्टिविटी होती हैं जो लॉन्चर आइटम तय करती हैं या किसी और तरीके से एक्सपोर्ट की जाती हैं. इन्हें पिछले चरण में बनाई गई थीम से बदलें:
<manifest>
<application android:theme="@style/Theme.App.Starting">
<!-- or -->
<activity android:theme="@style/Theme.App.Starting">
<!-- ... -->
</manifest>
शुरुआती गतिविधि अपडेट करना
super.onCreate()
को कॉल करने से पहले, शुरू होने वाली गतिविधि में अपनी स्प्लैश स्क्रीन इंस्टॉल करें:
class MainActivity : ComponentActivity() {
override fun onCreate(savedInstanceState: Bundle?) {
// Handle the splash screen transition.
installSplashScreen()
super.onCreate(savedInstanceState)
setContent {
WearApp("Wear OS app")
}
}
}
अन्य संसाधन
स्प्लैश स्क्रीन के बारे में ज़्यादा जानें. साथ ही, यह भी जानें कि अपने ऐप्लिकेशन में इनका इस्तेमाल कैसे किया जा सकता है.
आपके लिए सुझाव
- ध्यान दें: JavaScript बंद होने पर लिंक टेक्स्ट दिखता है
- स्प्लैश स्क्रीन को Android 12 और उसके बाद के वर्शन पर माइग्रेट करना
- स्प्लैश स्क्रीन
- Android विजेट के साथ ऐप्लिकेशन ऐक्शन इंटिग्रेट करना