फोनगैप - एंड्रॉयड ऐप के लिए स्प्लैश स्क्रीन


84

क्या कोई सलाह दे सकता है कि मैं अपने HTML5 Phonegap आधारित Android ऐप में एक स्प्लैश स्क्रीन कैसे जोड़ सकता हूं। मैं बस इसे लोड पर 5 सेकंड के लिए प्रदर्शित करना चाहता हूं। इसके अलावा - क्या कोई सलाह दे सकता है कि स्प्लैश स्क्रीन किन आयामों पर होनी चाहिए।


2
बस एक अनुकूल सलाह, किसी भी परिस्थिति में मोबाइल ऐप पर स्प्लैश स्क्रीन लगाना अच्छा नहीं है। यह आपके उपयोगकर्ताओं को सुपर क्रोधित करने वाला है।
कुर्टिस नुसबम

37
मुझे खेद है कर्टिस, मुझे यकीन नहीं है कि आप क्या वकालत कर रहे हैं। कई बहुत लोकप्रिय मोबाइल ऐप हैं जो अपने उपयोगकर्ताओं को झुंझलाहट पैदा किए बिना लोड करते समय एक दिखावा स्क्रीन दिखाते हैं। iOS के पास भी इस उद्देश्य के लिए विशेष रूप से Default.png के कारण एक छवि है।
देवगीत

6
@Devgeeks मैं इस मामले के लिए कर्टिस नुसुबम से सहमत हूं जहां आप इसे दिखाने के लिए एक दिखावा स्क्रीन दिखा रहे हैं। यदि आपके आवेदन को शुरू होने में लंबा समय लगता है, तो गतिविधि सूचक के साथ एक स्प्लैश स्क्रीन शायद कुछ भी नहीं से बेहतर है, जो कि उन लोकप्रिय अनुप्रयोगों के लिए संभावित कारण होगा जिनके बारे में आप बात कर रहे हैं। अन्यथा लोकप्रिय मोबाइल एप्लिकेशन के बराबर (या इससे भी अधिक) संख्या हैं जो स्प्लैश स्क्रीन नहीं दिखाते हैं। मूल रूप से आप जितनी जल्दी हो सके आवेदन के लिए उपयोगकर्ता प्राप्त करें। हर बार एक 5 सेकंड की छप स्क्रीन एक बुरा विचार है क्योंकि यह लंबी अवधि में उपयोगकर्ताओं को निराश करेगा।
किंजल दीक्षित

1
कृपया ... यह मत करो! स्पलैशस्क्रीन एक अच्छा विचार नहीं है :) यह सही है, कि कुछ लोकप्रिय एप्लिकेशन के पास यह है, लेकिन इसका मतलब यह नहीं है, कि यह एक अच्छा विचार है;)
--t --pán Víteček

1
मुझे लगता है कि स्प्लैश स्क्रीन स्वाद / डिजाइन का विषय हैं। बेशक अधिकांश यूएक्स लोग इसका उपयोग नहीं करने की सलाह देंगे लेकिन मैं उनसे असहमत हूं; 1sec स्प्लैश स्क्रीन कोई नुकसान नहीं करेगी, इसके बजाय, यह "व्यक्तित्व" जोड़ देगा और आपके एप्लिकेशन को "थीम" सेट कर देगा जो हजारों "बूटस्ट्रैपिश" ऐप से बाहर खड़ा होगा। मेरे डिवाइस में, 70% से अधिक दैनिक उपयोग किए जाने वाले ऐप्स में स्पलैश स्क्रीन है :)
numediaweb

जवाबों:


176

आदेश में एक PhoneGap एंड्रॉयड आवेदन आप अपने लगाने की जरूरत में एक स्प्लैश स्क्रीन रखने के लिए splash.pngमें फ़ाइल res/drawable-ldpi, res/drawable-mdpi, res/drawable-hdpi, res/drawable-xhdpi। जहाँ वे निर्देशिकाएँ प्रति इंच कम, मध्यम, उच्च और अतिरिक्त बड़े डॉट्स का प्रतिनिधित्व करती हैं। आपको प्रत्येक निर्देशिका के लिए splash.png (फ़ाइल नाम यहाँ महत्वपूर्ण है) का आकार बदलने की आवश्यकता होगी या Android आपके लिए इसे बढ़ाएगा।

प्रत्येक छवि का आकार होना चाहिए:

  • xlarge (xhdpi): कम से कम 960 x 720
  • बड़ा (एचडीपीआई): कम से कम 640 x 480
  • माध्यम (mdpi): कम से कम ४ x० x ३२०
  • छोटा (ldpi): कम से कम 426 x 320

फिर आपके मुख्य जावा वर्ग में, जो DroidGap का विस्तार करता है, आपको एक पंक्ति जोड़ने और दूसरे को संशोधित करने की आवश्यकता होगी। पहले जोड़ें:

super.setIntegerProperty("splashscreen", R.drawable.splash);

इस लाइन के तहत super.onCreateलेकिन पहले दिखाना चाहिए super.loadUrl। फिर आपको मुख्य पृष्ठ को लोड करने से पहले 5 सेकंड के लिए रुकने के लिए अपनी लोड-यूआरएल विधि को संशोधित करना होगा। यह इस तरह दिखेगा:

super.loadUrl("file:///android_asset/www/index.html", 5000);

यह आपके लिए करना चाहिए।

मैंने हाल ही में कुछ अपडेट किए हैं कि स्पलैशस्क्रीन फोनगैप एंड्रॉइड पर कैसे काम करता है। मुख्य ऐप अब लोड होता है जबकि स्प्लैश स्क्रीन दिखाई जा रही है। यह पिछले ब्लॉकिंग स्प्लैश स्क्रीन कॉल पर एक बड़ा सुधार है। मेरे ब्लॉग के परिवर्तनों के बारे में और पढ़ें


1
हाय SImon मैं बस एक त्रुटि प्राप्त कर रहा हूँ 'आवेदन को अप्रत्याशित रूप से उपरोक्त को लागू करते समय रोक दिया गया है?
डांसर

2
PhoneGap 1.2 में टाइमआउट पैरामीटर का उपयोग करके कोई समस्या प्रतीत होती है। यह भी देखें stackoverflow.com/questions/8100219/...
पॉल Beusterien

1
अगर मैं 5 सेकंड के टाइमआउट को हटा देता हूं, तो ऐप लोड होने पर संक्षिप्त रूप से प्रदर्शित करता है - तो यह एक टाइमआउट के साथ ऊपर के संयोजन की तरह दिखता है, जो एक उपचार का काम करेगा .. आपकी मदद के लिए चीयर्स
डांसर

6
5 सेकंड के लिए उपयोगकर्ता की प्रतीक्षा की आवश्यकता भयानक सलाह है।
grahamparks

1
@BallisticPugh आप 9-पैच छवि का उपयोग करना चाहते हैं ताकि आप नियंत्रित कर सकें कि क्या फैला है।
साइमन मैकडोनाल्ड

6

फोनगैप (अपाचे कॉर्डोवा) प्रलेखन में स्प्लैश स्क्रीन और एंड्रॉइड और आईओएस दोनों के लिए एक ही स्थान पर विभिन्न प्रस्तावों के बारे में पर्याप्त विवरण हैं।

http://docs.phonegap.com/en/2.2.0/cordova_splashscreen_splashscreen.md.html


3

मेरे Phonegap ऐप, एंड्रॉइड वर्जन में, एक्लिप्स डिबगर अगर आप स्पलैश स्क्रीन या यहां तक ​​कि लोड करने से पहले 'लोडिंग' डायलॉग सेट करते हैं, तो टैंट्रम फेंकता है।

दोनों एक डिवाइस पर इंस्टॉल किए गए वास्तविक ऐप में काम करेंगे, लेकिन वे आपके डिबगिंग को तोड़ देंगे। इसलिए मैंने उन्हें लोडयूएलआर के पीछे रख दिया है, जहां वे कोई नुकसान नहीं कर सकते हैं और फिर भी ऐप से पहले ही अच्छा दिखा सकते हैं।

public class App extends DroidGap {
/** Called when the activity is first created. */
@Override
public void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    super.loadUrl("file:///android_asset/www/index.html",5000);
    super.setStringProperty("loadingDialog", "Starting your app...");
    super.setIntegerProperty("splashscreen", R.drawable.splash);
    ...
}...

3

मुझे फोनगैप एंड्रॉइड में भी इस मुद्दे का सामना करना पड़ा है। लेकिन अब मुझे समाधान मिल गया है।

super.setIntegerProperty("splashscreen", R.drawable.splash);(find image under drawable folder named splash,so put splash.png under drawable folder)
super.loadUrl("file:///android_asset/www/index.html",15000);(splash screen will show 15 sec.

कृपया अपनी मुख्य जावा फ़ाइल को अपनी परियोजना निर्देशिका में src फ़ोल्डर के अंतर्गत संपादित करें।

public class radiobiafra extends DroidGap
{
    @Override
    public void onCreate(Bundle savedInstanceState)
    {
         super.onCreate(savedInstanceState);

         super.setIntegerProperty("splashscreen", R.drawable.splash);
         super.loadUrl("file:///android_asset/www/index.html",15000);
     }
}

1
यह आम तौर पर पाया जा सकता है:platforms/android/src/com/[your app name]/[Your App Name.java
इयान जेमिसन

मुझे उपरोक्त पथ में कोई .java फ़ाइल नहीं मिली
Prak

0

यह शायद आपकी जरूरतों को पूरा करेगा। यह आपको एक अच्छी सहज ज्ञान युक्त अंतरफलक में सभी प्रासंगिक config.xml सेटिंग, चित्र और स्प्लैशस्क्रीन को जोड़ने और अनुकूलित करने देता है।

मैं फ़ाइल डाउनलोड करने और मैन्युअल रूप से इंस्टॉल करने की सलाह देता हूं। वेब आधारित एयर इंस्टॉलर काम नहीं करता है।

http://aj-software.com/configap/index.html


0

कॉर्डोवा> = 3.6 का उपयोग करना, और कॉर्डोवा कमांड-लाइन इंटरफ़ेस के साथ अपने ऐप का निर्माण करना, config.xmlफ़ाइल से स्प्लैश स्क्रीन को कॉन्फ़िगर करना संभव है । यह Android के लिए एक उदाहरण है:

<platform name="android">
    <!-- you can use any density that exists in the Android project -->
    <splash src="res/screen/android/splash-land-hdpi.png" density="land-hdpi"/>
    <splash src="res/screen/android/splash-land-ldpi.png" density="land-ldpi"/>
    <splash src="res/screen/android/splash-land-mdpi.png" density="land-mdpi"/>
    <splash src="res/screen/android/splash-land-xhdpi.png" density="land-xhdpi"/>

    <splash src="res/screen/android/splash-port-hdpi.png" density="port-hdpi"/>
    <splash src="res/screen/android/splash-port-ldpi.png" density="port-ldpi"/>
    <splash src="res/screen/android/splash-port-mdpi.png" density="port-mdpi"/>
    <splash src="res/screen/android/splash-port-xhdpi.png" density="port-xhdpi"/>
</platform>
<preference name="SplashScreenDelay" value="10000" />

प्रोग्राम स्क्रीन को छप / छिपाने के लिए एक समर्पित प्लगइन भी है ।

देखें Cordova प्रलेखन अधिक जानकारी के लिए।

हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.