phonegap - заставка для приложения Android - PullRequest
84 голосов
/ 16 ноября 2011

Может кто-нибудь посоветовать, как мне добавить заставку в свое приложение Android на базе HTML5 Phonegap. Я просто хочу, чтобы он отображался в течение 5 секунд при загрузке. Также - кто-нибудь может посоветовать, какими должны быть размеры заставки.

Ответы [ 6 ]

176 голосов
/ 16 ноября 2011

Чтобы иметь заставку в приложении PhoneGap Android, вам нужно поместить файл splash.png в res/drawable-ldpi, res/drawable-mdpi, res/drawable-hdpi, res/drawable-xhdpi. Где эти каталоги представляют низкие, средние, высокие и очень большие точки на дюйм. Вам нужно изменить размер вашего splash.png (имя файла здесь важно) для каждого каталога, иначе Android его растянет.

Размеры каждого изображения должны быть:

  • xlarge (xhdpi): не менее 960 x 720
  • большой (hdpi): не менее 640 x 480
  • средний (т / д): не менее 470 x 320
  • маленький (ldpi): не менее 426 x 320

Затем в вашем основном 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. Основное приложение теперь загружается во время показа заставки. Это большое улучшение по сравнению с предыдущим вызовом блокировки заставки. Подробнее об изменениях в моем блоге .

6 голосов
/ 14 декабря 2012

В документации Phonegap (Apache Cordova) достаточно информации о заставке и разных разрешениях для Android и iOS в одном месте.

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

3 голосов
/ 22 июля 2013

Я также столкнулся с этой проблемой в PhoneGap 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.

Пожалуйста, отредактируйте ваш основной файл Java в папке 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);
     }
}
3 голосов
/ 05 марта 2012

В моем приложении 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);
    ...
}...
0 голосов
/ 28 августа 2015

Используя 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 для получения дополнительной информации.

0 голосов
/ 26 августа 2013

Это, вероятно, будет соответствовать вашим потребностям.Он позволяет настраивать и добавлять все соответствующие настройки config.xml, изображения и заставки в приятном интуитивно понятном интерфейсе.

Я рекомендую загрузить файл и установить вручную.Похоже, веб-установщик не работает.

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

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...