Phonegap启动画面无法加载

时间:2014-09-22 14:48:12

标签: android cordova splash-screen

我正在使用phonegap 3.5.0开发Android应用程序 - 我的测试设备是带有Android 4.1.2的三星Galaxy Tab(GT-P5100)。

半年前,我用phonegap做了我的第一次测试。我记得在启动时使用config.xml中的以下行加载启动画面

<gap:splash gap:platform="android" src="res/screen/android/screen-xhdpi-portrait.png" />

现在有了上面提到的硬件和软件,它不再起作用了......

我尝试了以下内容:

<gap:splash gap:platform="android" gap:qualifier="port-ldpi" src="res/screen/android/screen-ldpi-portrait.png" />
<gap:splash gap:platform="android" gap:qualifier="port-mdpi" src="res/screen/android/screen-mdpi-portrait.png" />
<gap:splash gap:platform="android" gap:qualifier="port-hdpi" src="res/screen/android/screen-hdpi-portrait.png" />
<gap:splash gap:platform="android" gap:qualifier="port-xhdpi" src="res/screen/android/screen-xhdpi-portrait.png" />
<gap:splash gap:platform="android" gap:density="ldpi" src="res/screen/android/screen-ldpi-portrait.png" />
<gap:splash gap:platform="android" gap:density="mdpi" src="res/screen/android/screen-mdpi-portrait.png" />
<gap:splash gap:platform="android" gap:density="hdpi" src="res/screen/android/screen-hdpi-portrait.png" />
<gap:splash gap:platform="android" gap:density="xhdpi" src="res/screen/android/screen-xhdpi-portrait.png" />
<gap:splash gap:platform="android" src="res/screen/android/screen-xhdpi-portrait.png" />

当然:

<gap:plugin name="org.apache.cordova.splashscreen" />

有什么建议吗?谢谢!

P.S。:也不适用于Sony Xperiia Z1 Android 4.4.4。

1 个答案:

答案 0 :(得分:0)

对于高于3.5的Phonegap版本,需要使用splashscreen插件才能加载启动画面。您可以从此处下载(https://github.com/apache/cordova-plugin-splashscreen/blob/master/doc/index.md)。 您还可以使用本机java代码来显示启动画面

// splash.java

public class Splash extends Activity {
    protected void onCreate(Bundle savedInstanceState) {

            super.onCreate(savedInstanceState);
            //show your splash screen for three seconds
            setContentView(R.layout.splash);
            public void run() {
                    try{

                        sleep(3000);

                    }catch(InterruptedException e){

                        e.printStackTrace();

                    }finally {

                    //launch the mainactivity after three seconds
                    Mainactivity.class  is your phonegap default javafile   
                    Intent mainactivity = new Intent(Splash.this,Mainactivity.class);
                    startActivity(mainactivity);               
   }
   @Override
    protected void onPause() {
        // TODO Auto-generated method stub
        super.onPause();
        finish();

    }

}

注意:将Splash.java设置为启动器活动并在清单文件中进行适当的更改