离子闪屏不起作用(显示相同的默认图标)

时间:2016-12-11 20:34:50

标签: cordova ionic-framework cordova-plugins splash-screen

我正在尝试为我的离子应用添加启动画面。以下是我遵循的步骤:

$ionic start splashtest blank
$ionic platform add android
$cordova plugin add cordova-plugin-splashscreen

Now, Updated my icon.png and splash.png to  /splashtest/resources/ folder 
where the default icon.png and splash.png was there.

$ionic resources --splash
$ionic resources --icon

Generated Successfully.

我的项目文件夹(c:/ splashtest /)中的config.xml如下:

<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<widget id="com.ionicframework.splashv2209052" version="0.0.1"   xmlns="http://www.w3.org/ns/widgets"  xmlns:cdv="http://cordova.apache.org/ns/1.0">
<name>splashv2</name>
<description>
    An Ionic Framework and Cordova project.
</description>
<author email="you@example.com" href="http://example.com/">
  Your Name Here
</author>
<content src="index.html"/>
<access origin="*"/>
<preference name="webviewbounce" value="false"/>
<preference name="UIWebViewBounce" value="false"/>
<preference name="DisallowOverscroll" value="true"/>
<preference name="SplashScreenDelay" value="2000"/>
<preference name="FadeSplashScreenDuration" value="2000"/>
<preference name="android-minSdkVersion" value="16"/>
<preference name="BackupWebStorage" value="none"/>
<preference name="SplashScreen" value="screen"/>
<feature name="StatusBar">
<param name="ios-package" value="CDVStatusBar" onload="true"/>
</feature>
<platform name="android">
<splash src="resources\android\splash\drawable-land-ldpi-screen.png" density="land-ldpi"/>
<splash src="resources\android\splash\drawable-land-mdpi-screen.png" density="land-mdpi"/>
<splash src="resources\android\splash\drawable-land-hdpi-screen.png" density="land-hdpi"/>
<splash src="resources\android\splash\drawable-land-xhdpi-screen.png" density="land-xhdpi"/>
<splash src="resources\android\splash\drawable-land-xxhdpi-screen.png" density="land-xxhdpi"/>
<splash src="resources\android\splash\drawable-land-xxxhdpi-screen.png" density="land-xxxhdpi"/>
<splash src="resources\android\splash\drawable-port-ldpi-screen.png" density="port-ldpi"/>
<splash src="resources\android\splash\drawable-port-mdpi-screen.png" density="port-mdpi"/>
<splash src="resources\android\splash\drawable-port-hdpi-screen.png" density="port-hdpi"/>
<splash src="resources\android\splash\drawable-port-xhdpi-screen.png" density="port-xhdpi"/>
<splash src="resources\android\splash\drawable-port-xxhdpi-screen.png" density="port-xxhdpi"/>
<splash src="resources\android\splash\drawable-port-xxxhdpi-screen.png" density="port-xxxhdpi"/>
 <icon src="resources\android\icon\drawable-ldpi-icon.png" density="ldpi"/>
<icon src="resources\android\icon\drawable-mdpi-icon.png" density="mdpi"/>
<icon src="resources\android\icon\drawable-hdpi-icon.png" density="hdpi"/>
<icon src="resources\android\icon\drawable-xhdpi-icon.png" density="xhdpi"/>
<icon src="resources\android\icon\drawable-xxhdpi-icon.png" density="xxhdpi"/>
<icon src="resources\android\icon\drawable-xxxhdpi-icon.png" density="xxxhdpi"/>
</platform>
<icon src="resources\android\icon\drawable-xhdpi-icon.png"/>
</widget>

我还看到/ splashtest / platforms / android / res /中的图标是默认的。但是,我的config.xml引用了resources / android / splash文件夹。我该如何解决这个问题

Ionic -v
2.1.8


cordova -v
6.4.0

由于

3 个答案:

答案 0 :(得分:2)

你有最新版本的cordova,但可能不是最新版本的android平台。更新到最新版本。

cordova platform update android@6.1.0

EDITED:将@ 6.1.0添加到上面的命令中。否则它将安装6.0.0版本,你仍然会遇到这些问题。

EDITED:最近发布的Cordova版本6.5.0有cordova-android版本6.1.1。那么,现在你可以做到:

npm install -g cordova

答案 1 :(得分:1)

面临同样的问题。升级到android 6.1.1解决了这个问题。 为我工作:

cordova 6.5 (cordova --version)
cordova platform update android@6.1.1

不幸的是,它与admodpro产生了冲突,我以这种方式解决了这个问题:
在我的config.xml中:

<preference name="SplashScreen" value="screen"/>
<preference name="SplashScreenDelay" value="3000"/>
<preference name="android-build-tool" value="gradle"/>
<plugin name="cordova-plugin-admobpro" source="npm"/>

小心,不要写“gap:plugin”而只写“插件”。这改变了我的一切。

答案 2 :(得分:0)

我知道这很奇怪,但尝试降级到Cordova 6.3.1,最近我遇到同样的问题,必须降级才能使其正常工作(您可能还需要重新添加平台)

我仍在查看CLI中的哪些更改可能会导致此问题。 (或者我们必须采用什么新方法才能使其发挥作用)