8

我正在尝试使用 phonegap 启动一个 cordova 应用程序,并且无法更改 iOS 的默认应用程序图标 - (实际图标不是启动屏幕)。默认图标总是被复制到 Resouces --> icons 文件夹中,而不是我的自定义图标中。我使用了 phonegap 中的指定方法,建议将图标标签添加到 config.xml 文件中,但这不起作用?重新启动 xcode 并重新启动我的应用程序,然后从模拟器/设备中删除它不起作用。

这是我指定图标的 config.xml 文件...

...
<icon src="icon.png" />
<icon src="icon/ios/icon.png" gap:platform="ios" width="57" height="57" />
<icon src="icon/ios/icon@2x.png" gap:platform="ios" width="114" height="114" />
<icon src="icon/ios/icon-72.png" gap:platform="ios" width="72" height="72"/>
<!-- retina iPad support: PhoneGap 2.5.0+ only -->
<icon src="icon/ios/icon-72@2x.png" gap:platform="ios" width="144" height="144"/>
...

任何帮助都会很棒!

ps 我显然已经检查了我能找到的所有相关帖子,但没有运气

4

8 回答 8

5

我遇到了同样的问题,尽管搜索了一个明确的我没有运气尝试在 config.xml 中添加图标标签,也没有通过将我的图标存储在 www/icon 文件夹中,因此 cordova build 可以按预期复制它们。文档根本不清楚,分散在不同的帖子和解决方案中。

所以对我有用的是以下内容,虽然我认为这不是最优雅的解决方案,但它确实有效。

打开您的 XCode 项目并将您的图标存储在 Resources/icons 文件夹中,或者选择您的目标项目,转到摘要并向下滚动直到看到图标,单击其中任何一个并右键单击它并选择在 finder 中打开,这样您就有了覆盖默认位置的正确位置。

请务必使用目标文件夹中使用的相同名称以避免混淆,并清理您的项目并再次构建它。

如果您在模拟器或设备中运行项目,可能会出现默认图标,在这种情况下,只需从设备上卸载您的应用程序并重新构建它。

希望它有所帮助,但是我希望有一种方法来修改开发 www 并让科尔多瓦构建复制图标和启动画面。

于 2013-09-07T00:38:56.110 回答
4

我遇到了同样的问题(图标改回默认的,即使我的路径设置正确),更改行

<preference name="prerendered-icon" value="true" />

在 config.xml 从 true 到 false 为我解决了这个问题。

于 2015-05-21T09:42:48.957 回答
3

此方法有效,但您需要包含 www 的完整路径。 <icon src="www/img/logo.png" />

这种方法是我认为它应该工作的方式,但它没有。 <icon src="img/logo.png" />

科尔多瓦 4.0.0 版

于 2014-11-09T04:39:53.963 回答
0

使用这个网站上的 Hook 对我有用。这个 Hook 只是一个在构建过程中执行的 JavaScript(可以配置执行时间)。这是保持platforms/android目录中的内容通用且无需修改配置文件的好方法。

PS:console.log()在 Hook 中使用简单的命令来查看在构建期间(在 CLI 中)到底做了什么。

于 2014-12-03T16:40:23.440 回答
0

我的 Cordova 版本是 4.2。但是我正在Android中进行测试。

在构建期间,phonegap 将图标从 www/res/icons/ios 文件夹复制到 ant-build 的 android res 文件夹中,因此从不使用自定义图标,并且始终替换为默认图标。

我建议执行 cordova build --verbose 并彻底检查控制台日志,看看它是否行为不端。

祝你好运!

于 2015-03-19T09:50:26.017 回答
0

我认为您应该使用最新版本的phonegap,然后尝试一下。

http://cordova.apache.org/docs/en/3.2.0/config_ref_images.md.html 这样我们就不必在项目的平台文件夹中硬编码任何东西。

于 2014-06-06T08:50:59.280 回答
0

我的Cordova版本是3.5.0-0.2.7
它可以工作,但需要一组图标。我正在用 Andoid 进行测试。参考(文档)在这里

<icon src="www/res/icon.png" />
<platform name="android">
    <icon src="www/res/android/ldpi.png" density="ldpi" />
    <icon src="www/res/android/mdpi.png" density="mdpi" />
    <icon src="www/res/android/hdpi.png" density="hdpi" />
    <icon src="www/res/android/xhdpi.png" density="xhdpi" />
</platform>

我将这些图标放入 /www 文件夹中的 res 文件夹中。

现在,对于您的 IOS。应该是类似的。(我无法确认。我没有 IOS SDK。)

<icon src="www/res/icon.png" />
<platform name="ios">
    <icon src="www/res/ios/icon-60.png" width="60" height="60" />
    <icon src="www/res/ios/icon-60@2x.png" width="120" height="120" />
    <!-- and more.. (please follow the reference)-->
</platform>

在模拟器或设备中卸载您的应用,然后重试。
我希望这会有所帮助。祝你好运。

于 2014-09-18T21:19:24.200 回答
0

这是一个悬而未决的问题:https ://issues.apache.org/jira/browse/CB-2606 可悲的是,这不是唯一不能使用cordova atm的东西......

但是您可以使用此挂钩(与问题相关联)立即获得功能:https ://gist.github.com/apla/6179863

于 2013-10-29T13:15:11.147 回答