क्या ऐप आइकन को एनिमेट किया जा सकता है? iOS और Android असल में क्या अनुमति देते हैं
Charmotion टीम द्वारा · अपडेट:

नहीं। न iOS और न Android, किसी ऐप को अपना होम स्क्रीन आइकन एनिमेट करने का कोई पब्लिक तरीका देता है। iPhone पर setAlternateIconName केवल उन स्थिर आइकनों के बीच बदलाव करता है जो आप ऐप के साथ शिप करते हैं; केवल Apple के Clock और Calendar लाइव अपडेट होते हैं। Android launcher आइकन इफ़ेक्ट खुद बनाते हैं। फिर भी आपका आइकन लॉन्च इंट्रो में, Android स्प्लैश स्क्रीन पर, ऐप के अंदर, और वेब व स्टोर वीडियो में मूव कर सकता है।
मुख्य बातें
- iOS में एनिमेटेड होम स्क्रीन आइकन के लिए कोई पब्लिक API नहीं है; alternate आइकन स्थिर इमेज होते हैं जो build के समय घोषित किए जाते हैं।
- Apple DTS के अनुसार Clock और Calendar बिल्ट-इन ऐप हैं जो iOS SDK के बाहर की सुविधाओं का इस्तेमाल करते हैं।
- iOS आइकनों पर Liquid Glass की चमक और refraction सिस्टम लागू करता है, आपका ऐप नहीं।
- Android launcher adaptive icon इफ़ेक्ट खुद बनाते हैं; डेवलपर के कंट्रोल में आइकन का एकमात्र मोशन Android 12+ की स्प्लैश स्क्रीन है।
- व्यावहारिक जवाब है लॉन्च इंट्रो: एक स्थिर लॉन्च स्क्रीन, जिसके बाद पहली स्क्रीन पर आपका एनिमेटेड आइकन दिखता है।
पहले से कोई कैरेक्टर या लोगो है? अपने कैरेक्टर को असली ऐप स्क्रीन में देखें: स्प्लैश, ऑनबोर्डिंग, लोडिंग और एम्प्टी स्टेट स्क्रीन। यह फ़्री है, आपके ब्राउज़र में चलता है और कुछ भी अपलोड नहीं होता।
क्या iPhone पर ऐप आइकन को एनिमेट किया जा सकता है?
नहीं। iOS में ऐसा कोई पब्लिक API नहीं है जिससे थर्ड-पार्टी ऐप अपने Home Screen आइकन में एनिमेशन चला सके। आइकन के लिए एकमात्र API setAlternateIconName(_:completionHandler:) है, और यह केवल उन आइकनों के बीच बदलाव करता है जिन्हें आपने पहले से घोषित किया है: जो नाम आप देते हैं वह CFBundleAlternateIcons में लिस्ट होना चाहिए, और nil देने पर primary आइकन वापस आ जाता है (Apple Developer Documentation)। हर विकल्प एक तैयार, स्थिर इमेज सेट है जो ऐप में compile किया जाता है।
तीन और नियम इसे और सीमित करते हैं:
- Alternate आइकनों के अपने वेरिएंट होने चाहिए। Apple की HIG कहती है कि iOS और iPadOS में alternate आइकनों के लिए अलग dark, clear और tinted वेरिएंट ज़रूरी हैं, और ये सभी App Review के अधीन हैं (Apple HIG)।
- आइकन पहचानने लायक रहने चाहिए। Guideline 2.3.8 के अनुसार भ्रम से बचने के लिए आपके ऐप का नाम और आइकन, alternate आइकनों सहित, एक-दूसरे से मिलते-जुलते होने चाहिए (App Review Guidelines)।
- Liquid Glass सिस्टम का काम है। Liquid Glass डिज़ाइन में layered आइकनों पर specular highlights, refraction और translucency आती है, जिसे सिस्टम लागू करता है और ज़रूरत के हिसाब से बदलता है। HIG कहती है कि ये इफ़ेक्ट सिस्टम पर छोड़ दें, और बताती है कि कस्टम इफ़ेक्ट स्थिर होते हैं जबकि सिस्टम डायनामिक इफ़ेक्ट देता है।
इसलिए हाल के iOS वर्ज़न में आइकनों पर जो चमक चलती दिखती है, उसे आप script नहीं कर सकते, और कोई भी build setting आपके आइकन को लूप में नहीं बदलती।
Clock और Calendar के आइकन लाइव कैसे होते हैं?
ये Apple के अपने ऐप हैं। जब एक डेवलपर ने पूछा कि क्या कोई ऐप Clock आइकन की तरह अपना आइकन एनिमेट कर सकता है, तो Apple DTS के एक इंजीनियर ने जवाब दिया: "Clock और Calendar बिल्ट-इन ऐप हैं, इसलिए वे iOS SDK के बाहर की सुविधाओं का इस्तेमाल कर सकते हैं" (Apple Developer Forums)।
यह थ्रेड 2017 का है, और तब से सार्वजनिक रूप से कुछ नहीं बदला: SDK में अब भी थर्ड-पार्टी ऐप के लिए लाइव आइकन का कोई API नहीं है। Calendar की तारीख और Clock की सुइयाँ सिस्टम के अपवाद हैं, ऐसी सुविधा नहीं जिसे आप किसी entitlement से माँग सकें।
अगर आपको अपडेट होने वाली जानकारी चाहिए, जैसे तारीख, कोई गिनती या स्टेटस, तो इसके लिए सपोर्टेड जगहें widgets, Live Activities और notification badges हैं। इनकी अपनी एनिमेशन सीमाएँ हैं; सिस्टम के नियमों के भीतर कैरेक्टर कहाँ रह सकता है, यह जानने के लिए एनिमेटेड ऐप मैस्कॉट गाइड देखें।
2024 की उस ट्रिक का क्या, जिससे iOS आइकन एनिमेट हुए थे?
मई 2024 में एक डेवलपर ने एनिमेटेड Home Screen आइकन दिखाए थे। इसके लिए alternate icon API को एक private method से कॉल किया गया, जिससे यूज़र की पुष्टि वाला स्टेप छूट गया, और सिस्टम को धोखा दिया गया कि ऐप active है, जबकि वह फ़्रेम बदलता रहा। 9to5Mac की रिपोर्ट में कहा गया कि App Review शायद ऐसे किसी भी ऐप को रिजेक्ट कर देगा जो इसका फ़ायदा उठाए (9to5Mac)।
यह लिखित नियमों से मेल खाता है। Guideline 2.5.1 कहती है कि ऐप केवल पब्लिक API इस्तेमाल कर सकते हैं (App Review Guidelines)। इस डेमो को एक दिलचस्प प्रयोग मानें, शिप होने वाले ऐप के लिए विकल्प नहीं। पब्लिक API को लूप में कॉल करना भी बेहतर नहीं है: हर कॉल एक स्थिर आइकन को दूसरे से बदलता है, यह playback नहीं है।
क्या Android पर ऐप आइकन को एनिमेट किया जा सकता है?
launcher आइकन खुद नहीं। Android के adaptive icon में दो लेयर होती हैं (foreground और background), हर एक 108×108 dp की, और 66×66 dp का safe zone होता है जिसे OEM mask कभी नहीं काटता। Google का documentation कहता है कि हर तरफ़ के बाहरी 18 dp masking और parallax या pulsing जैसे visual इफ़ेक्ट के लिए रिज़र्व हैं, और "animated visual effects are generated by supported launchers" (Android Developers)। लेयर आप देते हैं; वे कैसे मूव होंगी, यह launcher तय करता है।
- Themed आइकन: Android 13 से यूज़र उन आइकनों को theme कर सकते हैं जिनमें
monochromeलेयर हो, जिन्हें उनके wallpaper और theme के हिसाब से रंग दिया जाता है। - ऑटोमैटिक theming: उसी पेज के अनुसार Android 16 QPR 2 से, Android उन ऐप के आइकन अपने आप theme करता है जो अपना themed आइकन नहीं देते।
- आइकन बदलना: इसके लिए कोई खास icon API नहीं है; ऐप आमतौर पर
<activity-alias>एंट्री के बीच बदलाव करते हैं, जो फिर भी स्थिर इमेजों के बीच ही बदलाव है। देखें alternate ऐप आइकन।
Android में आइकन को एनिमेट करने की सिर्फ़ एक जगह है: Android 12 और उसके बाद के वर्ज़न पर सिस्टम स्प्लैश स्क्रीन, जहाँ बीच में दिखने वाला आइकन AnimatedVectorDrawable हो सकता है। इसकी पूरी जानकारी Android स्प्लैश स्क्रीन एनिमेटेड आइकन गाइड में है।
आपका ऐप आइकन असल में कहाँ एनिमेट हो सकता है?
Home Screen को छोड़कर लगभग हर जगह। ये वे जगहें हैं जहाँ आपके आइकन के एनिमेटेड वर्ज़न की अनुमति है और वह काम का भी है:
| जगह | असल में क्या चलता है | आम फ़ॉर्मेट | गाइड |
|---|---|---|---|
| ऐप लॉन्च (iOS और Android) | स्टैटिक OS लॉन्च स्क्रीन, फिर आपकी पहली स्क्रीन पर एक छोटा इंट्रो | Rive .riv, HEVC alpha MOV, VP9 alpha WebM | लॉन्च इंट्रो |
| Android 12+ सिस्टम स्प्लैश | एनिमेटेड वेक्टर आइकन, 1,000 ms या उससे कम रखने की सलाह | AnimatedVectorDrawable XML | Android स्प्लैश |
| ऐप के अंदर | लोडिंग, एम्प्टी स्टेट, ऑनबोर्डिंग, success और error रिएक्शन | Rive स्टेट मशीन | लोडिंग एनिमेशन |
| वेबसाइट और प्रेस किट | आपके पेज के बैकग्राउंड पर हीरो या हेडर इंट्रो | ट्रांसपेरेंट WebM और HEVC MOV | वेबसाइट और लॉन्च वीडियो |
| App Store प्रोडक्ट पेज | ऐप की स्क्रीन रिकॉर्डिंग से बना App Preview, जिसमें आपका इन-ऐप इंट्रो भी शामिल है | रिकॉर्ड किया गया वीडियो, 15 से 30 s | App Preview स्पेसिफ़िकेशन |
| Google Play लिस्टिंग | YouTube URL से प्रीव्यू वीडियो, जो 30 s तक म्यूट होकर ऑटोप्ले हो सकता है | YouTube वीडियो | Play प्रोमो वीडियो |
| सोशल और Product Hunt | 9:16 लॉन्च क्लिप, गैलरी GIF | MP4, GIF | वर्टिकल वीडियो स्पेसिफ़िकेशन |
दोनों स्टोर में लिस्टिंग आइकन स्थिर इमेज ही रहता है: Google Play 512×512 px का 32-bit PNG माँगता है, जो ज़्यादा से ज़्यादा 1,024 KB का हो (Play Console Help), और Apple का iOS आइकन लेआउट साइज़ 1024×1024 px है।
एनिमेटेड ऐप आइकन के सबसे करीब क्या है?
लॉन्च हैंडऑफ़। यूज़र एक स्थिर आइकन पर टैप करता है, आपके ब्रांड कलर पर उसी आइकन वाली स्टैटिक लॉन्च स्क्रीन देखता है, और फिर आइकन आपकी पहली स्क्रीन पर जीवंत हो उठता है और इंटरफ़ेस दिखने के साथ वापस अपनी जगह पर आ जाता है। अच्छी तरह किया जाए तो यह "आइकन एनिमेट हुआ" जैसा लगता है, और इसमें सिर्फ़ पब्लिक, सपोर्टेड तरीकों का इस्तेमाल होता है।
- OS लॉन्च स्क्रीन को स्टैटिक रखें: iOS पर
UILaunchScreenया लॉन्च storyboard, जिसमें सिर्फ़ स्टैंडर्ड UIKit क्लास इस्तेमाल हो सकती हैं, कोई कस्टम क्लास या कोड कनेक्शन नहीं (Apple Developer Documentation)। Android पर, एक स्थिर या सरल AVD स्प्लैश आइकन। - लॉन्च स्क्रीन का आइकन आपके इंट्रो के पहले फ़्रेम से मेल खाना चाहिए: वही साइज़, वही सेंटर, वही बैकग्राउंड hex।
- पहली स्क्रीन पर इंट्रो चलाएँ, उसे आराम की स्थिति वाले आइकन पर खत्म करें, और उसके आसपास इंटरफ़ेस को फ़ेड इन करें।
- मोशन कम करें चालू होने पर इंट्रो स्किप करें, और तेज़ लॉन्च पर इसे रुकावट न बनाएँ।
Charmotion आपके आइकन की एक PNG, JPEG या WebP फ़ाइल से ठीक यही बनाता है: 2.6 सेकंड का लॉन्च इंट्रो जो आराम की स्थिति वाले आइकन पर खत्म होता है, और जो Rive फ़ाइल (LaunchStateMachine), ट्रांसपेरेंट WebM और HEVC MOV, 9:16 लॉन्च वीडियो और MP4 के रूप में डिलीवर होता है। 3D, ग्रेडिएंट और टेक्स्ट वाले आइकन Motion मोड में जैसे हैं वैसे ही एनिमेट होते हैं, कभी फिर से नहीं बनाए जाते। यह AnimatedVectorDrawable एक्सपोर्ट नहीं करता, इसलिए Android सिस्टम स्प्लैश वाला हिस्सा आपको खुद बनाना होगा।
अक्सर पूछे जाने वाले सवाल
क्या Apple ऐसे ऐप को रिजेक्ट करेगा जो अपना Home Screen आइकन एनिमेट करता है?
अगर यह प्राइवेट मेथड के ज़रिए किया गया है, तो रिजेक्शन की उम्मीद रखें: गाइडलाइन 2.5.1 सिर्फ़ पब्लिक API की अनुमति देती है, और 2024 का आइकन-साइक्लिंग डेमो एक प्राइवेट कॉल पर निर्भर था। यूज़र की पसंद पर setAlternateIconName से आइकन बदलना ठीक है, बशर्ते गाइडलाइन 2.3.8 के अनुसार हर आइकन आपके ऐप से मिलता-जुलता रहे।
क्या Liquid Glass आइकन इफ़ेक्ट एनिमेशन माने जाते हैं?
ऐसा एनिमेशन नहीं जिसे आप कंट्रोल करें। हाल के iOS वर्ज़न पर लेयर वाले आइकन में Liquid Glass की खूबियाँ आ जाती हैं, जैसे स्पेक्युलर हाइलाइट, रिफ़्रैक्शन और ट्रांसलूसेंसी, जिन्हें सिस्टम लागू करता है और हालात के हिसाब से बदलता है। Apple की HIG कहती है कि इन इफ़ेक्ट को अपने आर्टवर्क में खुद जोड़ने के बजाय सिस्टम पर छोड़ दें।
क्या tvOS ऐप आइकन हिलते हैं?
हाँ, लेकिन इसे सिस्टम चलाता है। tvOS आइकन में दो से पाँच लेयर होती हैं, और फ़ोकस होने पर आइकन ऊपर उठता है और यूज़र के रिमोट पर उंगली घुमाने के साथ parallax इफ़ेक्ट में झूलता है। लेयर आप डिज़ाइन करते हैं; उनमें अपना एनिमेशन नहीं जोड़ सकते।
क्या Android launcher चलता हुआ ऐप आइकन दिखा सकता है?
सिर्फ़ वही इफ़ेक्ट जो launcher खुद बनाता है। Google के adaptive icon डॉक्यूमेंटेशन के अनुसार एनिमेटेड विज़ुअल इफ़ेक्ट सपोर्टेड launcher बनाते हैं और ये हर launcher में अलग होते हैं। आपका ऐप सिर्फ़ स्थिर foreground, background और वैकल्पिक monochrome लेयर देता है।
इस गाइड से झटपट जवाब
स्रोत
- setAlternateIconName(_:completionHandler:), Apple Developer Documentation
- App icons, Apple Human Interface Guidelines
- Animated app icon like Clock (DTS reply), Apple Developer Forums
- iOS exploit enables animated app icons, 9to5Mac
- App Review Guidelines (2.3.4, 2.3.8, 2.5.1), Apple
- Adaptive icons, Android Developers
- Splash screens, Android Developers
- Specifying your app's launch screen, Apple Developer Documentation
- Add preview assets to showcase your app, Play Console Help