Может ли кто-нибудь посоветовать, как я могу добавить заставку в свое Android-приложение на основе HTML5 Phonegap. Я просто хочу, чтобы он отображался 5 секунд при загрузке. Также - кто-нибудь может посоветовать, каких размеров должна быть заставка.
Может ли кто-нибудь посоветовать, как я могу добавить заставку в свое Android-приложение на основе HTML5 Phonegap. Я просто хочу, чтобы он отображался 5 секунд при загрузке. Также - кто-нибудь может посоветовать, каких размеров должна быть заставка.
Ответы:
Для того , чтобы иметь заставку в приложении PhoneGap Android вам нужно положить splash.png
файл в res/drawable-ldpi
, res/drawable-mdpi
, res/drawable-hdpi
, res/drawable-xhdpi
. Где эти каталоги представляют собой низкие, средние, высокие и очень большие точки на дюйм. Вам нужно будет изменить размер splash.png (здесь важно имя файла) для каждого каталога, иначе Android растянет его за вас.
Размеры каждого изображения должны быть:
Затем в вашем основном классе Java, который расширяет DroidGap, вам нужно будет добавить одну строку и изменить другую. Сначала добавьте:
super.setIntegerProperty("splashscreen", R.drawable.splash);
эта строка должна появиться под, super.onCreate
но раньше super.loadUrl
. Затем вам нужно изменить метод loadUrl, чтобы он останавливался на 5 секунд перед загрузкой главной страницы. Это выглядело бы так:
super.loadUrl("file:///android_asset/www/index.html", 5000);
Это должно сделать это за вас.
Недавно я сделал несколько обновлений о том, как SplashScreen работает на PhoneGap Android. Главное приложение теперь загружается, пока отображается экран-заставка. Это большое улучшение по сравнению с предыдущим вызовом блокировки экрана-заставки. Подробнее об изменениях в моем блоге .
Документация Phonegap (Apache Cordova) содержит достаточно подробностей о заставке и различных разрешениях для Android и iOS в одном месте.
http://docs.phonegap.com/en/2.2.0/cordova_splashscreen_splashscreen.md.html
В моем приложении Phonegap, версия Android, отладчик Eclipse вызывает истерики, если вы устанавливаете заставку или даже диалог загрузки перед вызовом loadUrl.
Оба будут работать в реальном приложении, установленном на устройстве, но они нарушат вашу отладку. Поэтому я поместил их за loadUrl, где они не могут причинить вреда и по-прежнему хорошо отображаются до самого приложения.
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);
...
}...
Я также сталкивался с этой проблемой в телефонной связи Android .. но теперь у меня есть решение.
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.
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);
}
}
platforms/android/src/com/[your app name]/[Your App Name.java
Вероятно, это удовлетворит ваши потребности. Он позволяет настраивать и добавлять все соответствующие параметры config.xml, изображения и заставки в приятном интуитивно понятном интерфейсе.
Рекомендую скачать файл и установить вручную. Сетевой установщик воздуха не работает.
Используя Cordova> = 3.6 и создавая свое приложение с помощью интерфейса командной строки Cordova, можно настроить экран-заставку из 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 для получения дополнительной информации.