phonegap - Android uygulaması için açılış ekranı


84

Herhangi biri HTML5 Phonegap tabanlı Android Uygulamama nasıl bir açılış ekranı ekleyebileceğimi söyleyebilir mi? Yüklendiğinde sadece 5 saniye görüntülenmesini istiyorum. Ayrıca - herhangi biri açılış ekranının hangi boyutlarda olması gerektiğini söyleyebilir mi?


2
Sadece dostça bir tavsiye, hiçbir koşulda bir mobil uygulamaya bir açılış ekranı koymak iyi bir fikir değildir. Kullanıcılarınızı çok kızdıracak.
Kurtis Nusbaum

37
Üzgünüm Kurtis, neyi savunduğundan emin değilim. Kullanıcılarını rahatsız etmeden yüklenirken bir açılış ekranı gösteren birçok popüler mobil uygulama vardır. iOS, özellikle bu amaç için Default.png'ye neden olan bir resme sahiptir.
Devgeeks

6
@Devgeeks Bunun için bir açılış ekranı gösterdiğiniz durumda Kurtis Nusbaum'a katılıyorum. Uygulamanızın başlaması uzun zaman alıyorsa, muhtemelen hiç yoktan daha iyi bir etkinlik göstergesi olan bir açılış ekranı , bahsettiğiniz popüler uygulamaların olası nedeni olacaktır. Aksi takdirde, açılış ekranı göstermeyen eşit (veya daha fazla) sayıda popüler mobil uygulama vardır. Temel olarak kullanıcıyı olabildiğince hızlı bir şekilde uygulamaya getirin. Her seferinde 5 saniyelik açılış ekranı, uzun vadede kullanıcıları hayal kırıklığına uğratacağı için kötü bir fikirdir.
Kinjal Dixit

1
Lütfen ... bunu yapma! Splashscreen iyi bir fikir değil :) Doğru, bazı popüler uygulamalarda var, ancak bu iyi bir fikir olduğu anlamına gelmiyor;)
Štěpán Víteček

1
Açılış ekranlarının bir zevk / tasarım meselesi olduğunu düşünüyorum. Elbette çoğu UX kullanıcısı onu kullanmamayı tavsiye edecek, ancak ben onlara katılmıyorum; 1 saniyelik açılış ekranı herhangi bir zarar vermez, bunun yerine uygulamanıza bir "kişilik" katar ve binlerce "önyükleme" uygulamasından öne çıkan bir "tema" oluşturur. Cihazımda, günlük kullanılan uygulamaların% 70'inden fazlasında açılış ekranı var :)
numediaweb

Yanıtlar:


176

Eğer koymak için gereken PhoneGap Android uygulamasında bir açılış ekranı sahip olmak için splash.pngdosyayı res/drawable-ldpi, res/drawable-mdpi, res/drawable-hdpi, res/drawable-xhdpi. Bu dizinlerin inç başına düşük, orta, yüksek ve ekstra büyük noktaları temsil ettiği yer. Her dizin için splash.png'yi (burada dosya adı önemlidir) yeniden boyutlandırmanız gerekecek veya Android onu sizin için genişletecektir.

Her görüntünün boyutları şu şekilde olmalıdır:

  • xlarge (xhdpi): en az 960 x 720
  • büyük (hdpi): en az 640 x 480
  • orta (mdpi): en az 470 x 320
  • küçük (ldpi): en az 426 x 320

Ardından, DroidGap'i genişleten ana Java sınıfınızda, bir satır eklemeniz ve diğerini değiştirmeniz gerekir. İlk ekleyin:

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

bu çizgi daha super.onCreateönce ama altında görünmelidir super.loadUrl. Ardından, ana sayfayı yüklemeden önce 5 saniye duraklatmak için loadUrl yönteminizi değiştirmeniz gerekir. Şöyle görünecektir:

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

Bunu senin için yapmalı.

Yakın zamanda SplashScreen'in PhoneGap Android'de nasıl çalıştığına dair bazı güncellemeler yaptım. Ana uygulama artık açılış ekranı gösterilirken yüklenir. Bu, önceki engelleyen açılış ekranı çağrısına göre büyük bir gelişmedir. Blogumdaki değişiklikler hakkında daha fazla bilgi edinin .


1
Merhaba SImon i Sadece 'yukarıdakileri uygularken uygulama beklenmedik şekilde durdu' şeklinde bir hata alıyorum?
Dansçı

2
PhoneGap 1.2'de zaman aşımı parametresini kullanan bir sorun var gibi görünüyor. Ayrıca bkz. Stackoverflow.com/questions/8100219/…
Paul Beusterien

1
5 saniyelik zaman aşımını kaldırırsam, uygulama derlenir ve yüklenirken kısaca görüntülenir - bu nedenle, yukarıdakilerin bir zaman aşımı düzeltmesi ile bir araya gelmesi bir tedavi işe yarayacak gibi görünüyor .. yardımınız için teşekkürler
Dancer

6
Kullanıcının 5 saniye beklemesini şart koşmak korkunç bir tavsiye.
grahamparks

1
@BallisticPugh Neyin uzatıldığını kontrol edebilmek için 9 yama görüntüsü kullanmak istiyorsunuz.
Simon MacDonald


3

Phonegap uygulamamda, Android sürümünde, Eclipse hata ayıklayıcı, açılış ekranını veya hatta loadUrl'yi çağırmadan önce 'yükleme' iletişim kutusunu ayarlarsanız sinir krizi geçirir.

Her ikisi de bir cihazda yüklü olan gerçek uygulamada çalışır, ancak hata ayıklamanızı bozarlar. Bu yüzden onları hiçbir zarar veremeyecekleri ve yine de uygulamanın kendisinden önce iyi gösterebilecekleri loadUrl'nin arkasına koydum.

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

Phonegap android'de de bu sorunla karşılaştım .. ama şimdi çözümüm var.

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.

Lütfen ana java dosyanızı proje dizininizdeki src klasörü altında düzenleyin.

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
Bu normalde bulunabilir:platforms/android/src/com/[your app name]/[Your App Name.java
Ian Jamieson

Yukarıda belirtilen yolda herhangi bir .java dosyası bulamadım
Prak

0

Bu muhtemelen ihtiyaçlarınızı karşılayacaktır. Güzel bir sezgisel arayüzde tüm ilgili config.xml ayarlarını, resimleri ve açılış ekranlarını özelleştirmenize ve eklemenize olanak tanır.

Dosyayı indirmenizi ve manuel olarak kurmanızı tavsiye ederim. Web tabanlı hava yükleyici çalışmıyor gibi görünüyor.

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


0

Cordova> = 3.6 kullanarak ve uygulamanızı Cordova Komut Satırı Arayüzü ile oluştururken, açılış ekranını config.xmldosyadan yapılandırmak mümkündür . Bu, Android için bir örnektir:

<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" />

Açılış ekranını programlı olarak göstermek / gizlemek için özel bir eklenti de vardır .

Daha fazla bilgi için Cordova belgelerine bakın .

Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.