Alguém poderia me informar como posso adicionar uma tela inicial ao meu aplicativo Android baseado em HTML5 Phonegap. Eu só quero que ele seja exibido por 5 segundos no carregamento. Além disso - alguém pode aconselhar quais dimensões a tela inicial deve ter.
84
Respostas:
Para se ter uma tela em um aplicativo PhoneGap Android você precisa colocar o seu
splash.png
arquivo emres/drawable-ldpi
,res/drawable-mdpi
,res/drawable-hdpi
,res/drawable-xhdpi
. Onde esses diretórios representam pontos por polegada baixos, médios, altos e extragrandes. Você precisará redimensionar seu splash.png (o nome do arquivo é importante aqui) para cada diretório ou o Android irá expandi-lo para você.Os tamanhos de cada imagem devem ser:
Então, em sua classe Java principal, aquela que estende o DroidGap, você precisará adicionar uma linha e modificar outra. Primeiro adicione:
super.setIntegerProperty("splashscreen", R.drawable.splash);
esta linha deve aparecer abaixo,
super.onCreate
mas antessuper.loadUrl
. Em seguida, você precisará modificar seu método loadUrl para pausar por 5 segundos antes de carregar a página principal. Seria assim:super.loadUrl("file:///android_asset/www/index.html", 5000);
Isso deve bastar para você.
Recentemente, fiz algumas atualizações em como o SplashScreen funciona no PhoneGap Android. O aplicativo principal agora é carregado enquanto a tela inicial está sendo exibida. Esta é uma grande melhoria em relação à chamada de tela inicial de bloqueio anterior. Leia mais sobre as mudanças no meu blog .
fonte
A documentação do Phonegap (Apache Cordova) tem detalhes suficientes sobre a tela inicial e diferentes resoluções para Android e iOS em um só lugar.
http://docs.phonegap.com/en/2.2.0/cordova_splashscreen_splashscreen.md.html
fonte
Em meu aplicativo Phonegap, versão Android, o depurador Eclipse dá acessos de raiva se você definir a tela inicial ou até mesmo a caixa de diálogo de 'carregamento' antes de chamar loadUrl.
Ambos funcionarão no aplicativo real instalado em um dispositivo, mas interromperão a depuração. Então, eu os coloquei atrás do loadUrl, onde eles não podem causar danos e ainda aparecem bem antes do próprio aplicativo.
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); ... }...
fonte
Eu também enfrento esse problema no phonegap android .. mas agora eu tenho solução.
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.
Edite o arquivo java principal na pasta src do diretório do projeto.
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); } }
fonte
platforms/android/src/com/[your app name]/[Your App Name.java
Isso provavelmente atenderá às suas necessidades. Ele permite que você personalize e adicione todas as configurações, imagens e telas de abertura relevantes do config.xml em uma interface intuitiva agradável.
Eu recomendo baixar o arquivo e instalar manualmente. O instalador aéreo baseado na web não parece funcionar.
http://aj-software.com/configap/index.html
fonte
Usando Cordova> = 3.6 e construindo seu aplicativo com a Interface de Linha de Comando Cordova, é possível configurar a tela inicial a partir do
config.xml
arquivo. Este é um exemplo para 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" />
Também existe um plugin dedicado para mostrar / ocultar a tela inicial de forma programática.
Consulte a documentação do Cordova para obter mais informações.
fonte