首页 文章

Cordova启动画面无法在Android和iOS中加载

提问于
浏览
2

我正在使用VS 2015和Cordova CLI 6.1.1 . 我不能让spash屏幕工作,也不能用于Android,也不能用于iOS . 该图标在Android中显示正常,但在iOS中不显示 . 这是我的config.xml:

<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<widget id="hr.studio.whatever.dev" version="1.0.4" xmlns="http://www.w3.org/ns/widgets" xmlns:cdv="http://cordova.apache.org/ns/1.0" defaultlocale="en-EN" android-versionCode="20170404">
  <name>Whatever</name>
  <description>
        An Ionic Framework and Cordova project for Visual Studio
    </description>
  <author email="vscordovatools@microsoft.com" href="http://taco.visualstudio.com">Visual Studio JS Mobile Tooling</author>
  <content src="index.html" />
  <access origin="*" />
  <preference name="webviewbounce" value="false" />
  <preference name="UIWebViewBounce" value="false" />
  <preference name="DisallowOverscroll" value="true" />
  <preference name="android-minSdkVersion" value="15" />
  <preference name="BackupWebStorage" value="none" />
  <preference name="SplashScreen" value="screen" />
  <preference name="SplashScreenDelay" value="3000" />
  <preference name="windows-target-version" value="10.0" />
  <preference name="KeyboardDisplayRequiresUserAction" value="false" />
  <feature name="StatusBar">
    <param name="ios-package" onload="true" value="CDVStatusBar" />
  </feature>
  <plugin name="cordova-plugin-device" spec="~1.1.2" />
  <plugin name="cordova-plugin-console" spec="~1.0.3" />
  <plugin name="cordova-plugin-whitelist" spec="~1.2.2" />
  <plugin name="cordova-plugin-splashscreen" spec="~3.1.0" />
  <plugin name="cordova-plugin-statusbar" spec="~2.1.3" />
  <plugin name="ionic-plugin-keyboard" spec="~2.1.0" />
  <platform name="android">
    <icon src="resources/android/icon/mipmap-ldpi/ic_launcher.png" density="ldpi" />
    <icon src="resources/android/icon/mipmap-mdpi/ic_launcher.png" density="mdpi" />
    <icon src="resources/android/icon/mipmap-hdpi/ic_launcher.png" density="hdpi" />
    <icon src="resources/android/icon/mipmap-xhdpi/ic_launcher.png" density="xhdpi" />
    <icon src="resources/android/icon/mipmap-xxhdpi/ic_launcher.png" density="xxhdpi" />
    <icon src="resources/android/icon/mipmap-xxxhdpi/ic_launcher.png" density="xxxhdpi" />
    <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" />
  </platform>
  <platform name="ios">
    <icon src="resources/ios/icon/Icon-App-20x20@2x.png" width="20" height="20" />
    <icon src="resources/ios/icon/Icon-App-20x20@3x.png" width="20" height="20" />
    <icon src="resources/ios/icon/Icon-App-29x29@1x.png" width="29" height="29" />
    <icon src="resources/ios/icon/Icon-App-29x29@2x.png" width="29" height="29" />
    <icon src="resources/ios/icon/Icon-App-29x29@3x.png" width="29" height="29" />
    <icon src="resources/ios/icon/Icon-App-40x40@1x.png" width="40" height="40" />
    <icon src="resources/ios/icon/Icon-App-40x40@2x.png" width="40" height="40" />
    <icon src="resources/ios/icon/Icon-App-40x40@3x.png" width="40" height="40" />
    <icon src="resources/ios/icon/Icon-App-57x57@1x.png" width="57" height="57" />
    <icon src="resources/ios/icon/Icon-App-57x57@2x.png" width="57" height="57" />
    <icon src="resources/ios/icon/Icon-App-60x60@1x.png" width="60" height="60" />
    <icon src="resources/ios/icon/Icon-App-60x60@2x.png" width="60" height="60" />
    <icon src="resources/ios/icon/Icon-App-60x60@3x.png" width="60" height="60" />
    <icon src="resources/ios/icon/Icon-App-76x76@1x.png" width="76" height="76" />
    <icon src="resources/ios/icon/Icon-App-83.5x83.5@2x.png" width="83.5" height="83.5" />
    <icon src="resources/ios/icon/Icon-Small-50x50@1x.png" width="50" height="50" />
    <icon src="resources/ios/icon/Icon-Small-50x50@2x.png" width="50" height="50" />
    <splash src="resources/ios/splash/Default@2x~iphone.png" height="960" width="640" />
    <splash src="resources/ios/splash/Default~iphone.png" height="480" width="320" />
    <splash src="resources/ios/splash/Default-568h@2x~iphone.png" height="1136" width="640" />
    <splash src="resources/ios/splash/Default-667h.png" height="1334" width="750" />
    <splash src="resources/ios/splash/Default-736h.png" height="2208" width="1242" />
    <splash src="resources/ios/splash/Default-Landscape@2x~ipad.png" height="1536" width="2048" />
    <splash src="resources/ios/splash/Default-Landscape@2x~ipad.png" height="2048" width="1536" />
    <splash src="resources/ios/splash/Default-Landscape~ipad.png" height="768" width="1024" />
    <splash src="resources/ios/splash/Default-Landscape-736h.png" height="1242" width="2208" />
    <splash src="resources/ios/splash/Default-Portrait~ipad.png" height="1024" width="768" />
  </platform>
  <platform name="windows">
    <preference name="SplashScreenBackgroundColor" value="#ffffff" />
    <splash src="resources/windows/splash/Splash620x300.scale-100.png" width="620" height="300" />
    <icon src="resources/windows/icon/logo150x150.scale-100.png" width="150" height="150" />
    <icon src="resources/windows/icon/logo310x310.scale-100.png" width="310" height="310" />
    <icon src="resources/windows/icon/logo44x44.scale-100.png" width="44" height="44" />
    <icon src="resources/windows/icon/logo50x50.scale-100.png" width="50" height="50" />
    <icon src="resources/windows/icon/logo30x30.scale-100.png" width="30" height="30" />
    <icon src="resources/windows/icon/logo71x71.scale-100.png" width="71" height="71" />
    <icon src="resources/windows/icon/wide310x150.scale-100.png" width="310" height="150" />
  </platform>
  <plugin name="cordova-plugin-ace" version="0.1.2" src="https://github.com/adnathan/ace" />
  <preference name="deployment-target" value="9.0" />
</widget>

我向你保证,我已经仔细检查并三重检查了我的项目文件夹中图片的位置:

  • resources / android / splash / *

  • resources / ios / icon / *

  • resources / ios / splash / *

更重要的是,我覆盖了文件夹平台\ android \ res中的所有图像,并在那里放置了我的图像 . 没运气 .

我也试过从config.xml中删除这个标签:

<preference name="SplashScreen" value="screen" />

启动画面不是Ionic的默认设置,而只是带有深色背景的空白屏幕(比我在应用程序中使用的黑色背景#000更亮)

请帮忙!

附:我正在使用Splashcreen插件版本 . 3.1.0(http://cordova.apache.org/docs/en/latest/reference/cordova-plugin-splashscreen/index.html

2 回答

  • 0

    将以下首选项添加到config.xml:

    <preference name="SplashScreen" value="screen"/>
    <preference name="AutoHideSplashScreen" value="true"/>
    <preference name="SplashShowOnlyFirstTime" value="false"/>
    <preference name="ShowSplashScreenSpinner" value="false"/>
    <preference name="FadeSplashScreen" value="false"/>
    <preference name="SplashScreenDelay" value="20000"/>
    <splash src="resources\splash.png"/>
    

    使用此配置,启动画面适用于我(Ionic 2.3.0) .

  • 2

    感谢Manuel Taber,他帮助了一部分,整个解决方案就是:工作所需的关键是

    <preference name="FadeSplashScreen" value="false"/>
    

    我需要在调用cordova-plugin-splashscreen之前移动节点 <platform name="android"> ,所以我把它放在了 <preference name="SplashScreenDelay" value="3000" /> 之后

    这让它在Android上工作,我还得在iOS上测试它 .

相关问题