首页 文章

Cordova没有复制适当的图标和启动,只使用默认的Android

提问于
浏览
1

我的应用程序一直使用默认的cordova图标和启动画面 . 在挖掘时,应该发生的是我的所有icon / splash获取副本到platforms / android / res / . 当我在那里看时,它只是默认的cordova . 但是,在我的资源/ android /我的所有自定义的那些都在那里 .

适用于iOS,对于Android来说效果不错 . 我正在运行Cordova CLI 6.4.0 . 我将所有自定义图标和启动图像设置为正确的目录结构,并且在平台添加或构建android期间不会收到任何错误

下面是我的config.xml

<platform name="android">
    <allow-intent href="market:*" />
    <icon platform="android" src="resources/icon.png" />
    <icon platform="android" qualifier="ldpi" src="resources/icons/android/icon-36-ldpi.png" />
    <icon platform="android" qualifier="mdpi" src="resources/icons/android/icon-48-mdpi.png" />
    <icon platform="android" qualifier="hdpi" src="resources/icons/android/icon-72-hdpi.png" />
    <icon platform="android" qualifier="xhdpi" src="resources/icons/android/icon-96-xhdpi.png" />
    <icon platform="android" qualifier="xxhdpi" src="resources/icons/android/icon-144-xxhdpi.png" />
    <icon platform="android" qualifier="xxxhdpi" src="resources/icons/android/icon-192-xxxhdpi.png" />
    <splash platform="android" src="resources/splash.png" />
    <splash platform="android" qualifier="ldpi" src="resources/screens/android/screen-ldpi-portrait.png" />
    <splash platform="android" qualifier="mdpi" src="resources/screens/android/screen-mdpi-portrait.png" />
    <splash platform="android" qualifier="hdpi" src="resources/screens/android/screen-hdpi-portrait.png" />
    <splash platform="android" qualifier="xhdpi" src="resources/screens/android/screen-xhdpi-portrait.png" />
</platform>

<preference name="SplashScreen" value="screen"/>
<preference name="SplashScreenDelay" value="2000" />
<preference name="FadeSplashScreen" value="false" />
<preference name="FadeSplashScreenDuration" value="0" />
<preference name="SplashScreenBackgroundColor" value="0xFFFFFFFF" />
  • 与iOS完全相同的精确设置,并在那里完美运行

  • 我已经对路径进行了三次检查,一切正确,我的自定义图标确实位于指定的位置,但在构建过程中根本没有复制过

  • 我已经多次尝试删除并添加android平台,然后构建,与cordova-plugin-splashscreen相同

  • 图标和启动画面都无法在Android上运行

这是一个显示文件夹布局的屏幕截图,以及不幸的错误图像 .
platforms/android

resources/icons/android

Update 取得了一些进展,但并不完全存在 . 我在config.xml中用"density"替换了"qualifier" . 现在它做了什么它创建了一个正确的"res"文件夹,但它把它放在我的项目的根目录而不是平台/ android . 它还创建了平台/ android / res,但其中的所有图像都是默认的Cordova图像 . 如果我在构建之前将新文件夹/ res(我的自定义图标)移动到/ platforms / android(默认的cordova图标),那么应用程序会显示我正确的内容 . 我想这是一个有效的解决方法但是令人讨厌的......并且要注意;我删除/ res文件夹但是cordova平台添加android构建它,似乎只是在错误的目录中创建它 .

3 回答

  • 3

    这是在版本6.1.0中解决的cordova-android中的一个问题 .

    建议的步骤是:

    cordova platform update android@6.1.0 --save
    cordova platform rm android
    cordova platform add android
    

    资料来源:https://github.com/apache/cordova-android/pull/343

  • 1

    我有同样的问题,如果你找到解决方案请告诉我:)

    编辑

    我解决了升级我的android版本

    cordova平台更新android@6.1.0

  • 6

    我之前和我有过这个问题,并找到了两种方法可以通过 .

    • 升级Cordova平台:这是推荐的,我相信你升级到Cordova 6.4.x而不是你的平台,请尝试: cordova platform update android@latest

    要么

    • 降级Cordova CLI:有时候,prev步骤不起作用,所以你必须做一些不确定的事情,降级cordova才能工作 npm install -g cordova@6.3.1 (注意=> CLI 6.3.1只是我认为可以使用的版本)

相关问题