以下有2种方式
1 主Active中 onCreate函数里添加代码
2 config.xml文件进行配置(对通过命令行模式下cordova命令行生成的可行)
确保自己安装了SplashScreen插件
cordova plugin add org.apache.cordova.splashscreen
修改res\xml\config.xml
<feature name="SplashScreen">
<param name="android-package" value="org.apache.cordova.SplashScreen"/>
</feature>
方案1
import android.os.Bundle;
import android.view.Menu; //import android.view.MenuItem;
import org.apache.cordova.*; public class MainActivity extends CordovaActivity { @Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
super.setBooleanProperty("loadInWebView", true);
//启动动画 代码 在loadUrl之前
super.setIntegerProperty("splashscreen", R.drawable.a);
//R.drawable.a 这个说明是资源文件drawable下的文件名为bg的资源(不写后缀)
//super.loadUrl("file:///android_asset/www/index.html");
super.loadUrl("http://192.168.55.175:5000",7000);
} }
备注: drawable 是文件夹,路径是/res/drawble/a.png
a是启动图片,建议像素为 720*1280 放在该路径下 这里引用不需要扩展名
方式2
config.xml文件添加如下代码
<preference name="SplashScreen" value="a"/> #此节点为启动画面延时单位为毫为,设置为10秒(防止网络延时,程序没有加载完成,导致黑屏。 <preference name="SplashScreenDelay" value="10000"/>
优化:
前端index.html 页面
除了引用 cordova.js文件
添加如下js代码
//在启动的页面中加入js代码,设备初始化后,隐藏启动画面 document.addEventListener("deviceready", onDeviceReady, false); function onDeviceReady() { navigator.splashscreen.hide(); }