Czy ktoś mógłby doradzić, jak mogę dodać ekran powitalny do mojej aplikacji na Androida opartej na HTML5 Phonegap. Chcę, aby po załadowaniu wyświetlał się przez 5 sekund. Również - czy ktoś może doradzić, jakie wymiary powinien mieć ekran powitalny.
84
Odpowiedzi:
W celu uzyskania ekran powitalny w aplikacji PhoneGap Android trzeba umieścić
splash.png
plik wres/drawable-ldpi
,res/drawable-mdpi
,res/drawable-hdpi
,res/drawable-xhdpi
. Gdzie te katalogi przedstawiają małe, średnie, wysokie i bardzo duże punkty na cal. Będziesz musiał zmienić rozmiar swojego splash.png (nazwa pliku jest tutaj ważna) dla każdego katalogu lub Android rozciągnie go za Ciebie.Rozmiary każdego obrazu powinny wynosić:
Następnie w swojej głównej klasie Java, tej, która rozszerza DroidGap, musisz dodać jedną linię i zmodyfikować drugą. Najpierw dodaj:
super.setIntegerProperty("splashscreen", R.drawable.splash);
ta linia powinna pojawić się pod
super.onCreate
ale wcześniejsuper.loadUrl
. Następnie musisz zmodyfikować metodę loadUrl, aby wstrzymać na 5 sekund przed załadowaniem strony głównej. Wyglądałoby to tak:super.loadUrl("file:///android_asset/www/index.html", 5000);
To powinno wystarczyć.
Niedawno wprowadziłem kilka aktualizacji dotyczących działania SplashScreen w PhoneGap Android. Główna aplikacja ładuje się teraz podczas wyświetlania ekranu powitalnego. To duża poprawa w stosunku do poprzedniego wywołania ekranu powitalnego blokującego. Przeczytaj więcej o zmianach na moim blogu .
źródło
Dokumentacja Phonegap (Apache Cordova) zawiera wystarczająco dużo szczegółów na temat ekranu powitalnego i różnych rozdzielczości dla Androida i iOS w jednym miejscu.
http://docs.phonegap.com/en/2.2.0/cordova_splashscreen_splashscreen.md.html
źródło
W mojej aplikacji Phonegap, wersja na Androida, debugger Eclipse wywołuje napady złości, jeśli ustawisz ekran powitalny lub nawet okno dialogowe „wczytywania” przed wywołaniem loadUrl.
Oba będą działać w rzeczywistej aplikacji zainstalowanej na urządzeniu, ale zakłócą debugowanie. Więc umieściłem je za loadUrl, gdzie nie mogą wyrządzić krzywdy i nadal dobrze się prezentują przed samą aplikacją.
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); ... }...
źródło
Też napotkałem ten problem w phonegap android .. ale teraz mam rozwiązanie.
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.
Edytuj główny plik java w folderze src w katalogu projektu.
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); } }
źródło
platforms/android/src/com/[your app name]/[Your App Name.java
To prawdopodobnie spełni Twoje potrzeby. Pozwala dostosować i dodać wszystkie odpowiednie ustawienia config.xml, obrazy i ekrany powitalne w przyjemnym, intuicyjnym interfejsie.
Zalecam pobranie pliku i instalację ręczną. Wygląda na to, że instalator powietrza oparty na sieci Web nie działa.
http://aj-software.com/configap/index.html
źródło
Używając Cordova> = 3.6 i budując swoją aplikację za pomocą Cordova Command-Line Interface, można skonfigurować ekran powitalny z
config.xml
pliku. To jest przykład dla Androida:<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" />
Istnieje również dedykowana wtyczka do programowego wyświetlania / ukrywania ekranu powitalnego.
Więcej informacji można znaleźć w dokumentacji Cordova .
źródło