为啥 PhoneGap 总是显示默认的启动画面?

Posted

技术标签:

【中文标题】为啥 PhoneGap 总是显示默认的启动画面?【英文标题】:Why PhoneGap always shows default splashscreen image?为什么 PhoneGap 总是显示默认的启动画面? 【发布时间】:2013-09-18 07:40:55 【问题描述】:

我现在正在测试一个示例 ios 应用程序,尽管我在 Xcode 中设置了所有新的启动图像(项目目标屏幕的摘要选项卡),但 PhoneGap 3.0 仍然显示其默认启动画面。为什么?即使splashscreen是一个插件并且现在PhoneGap 3.0中默认不包含它。

iOS 文档说的是启动图像而不是闪屏,它甚至强烈建议我们使用类似于启动图像的“第一屏”,而不是类似于屏幕的东西。这些是一样的吗?

【问题讨论】:

你有任何解决方案吗............这个答案不适用于我的项目 什么解决方案?我下面的答案适用于我的所有应用程序。 我没有使用 xcode... 【参考方案1】:

这根本与清理或缓存问题无关。问题是 PhoneGap 默认在项目模板中包含所有可能的启动图像。这些文件位于 Resources 文件夹下,并在构建事件时复制到 bundle 的根文件夹。尽管我在 Xcode(目标/摘要屏幕)中正确选择了自己的启动图像,但默认 PhoneGap 的特定文件,例如Default~iphone.png 覆盖了我的文件 :(

一旦发现问题,您可以通过某种方式修复它,但我更喜欢以下步骤:

    删除 /platforms/ios/AppName/icons 和 /splash 文件夹下的所有默认图标和闪屏文件。你肯定不需要这些占位符图片。

    在 Xcode 中,选择 Targets/AppName,然后选项卡 Build Phases,在 Copy Bundle Resources 部分中删除上述步骤中的所有图像文件名。

    为应用图标添加您自己的图像文件并在此处启动图像。

    编辑 Info.plist 文件(/platforms/ios/AppName/ 下的文件 AppName-Info.plist)以包含您的图像,您将需要使用 CFBundleIcons 和 UILaunchImageFile 键。转到 iOS 开发者网站以供参考。

【讨论】:

安卓版怎么样?您是否能够了解如何使其在 android 上运行? 在较新版本的 Cordova 中,步骤 1 中的文件夹分别位于 /platforms/ios/AppName/Images.xcassets/AppIcon.iconset/platforms/ios/AppName/Images.xcassets/LaunchImage.launchimage【参考方案2】:

启动画面和启动图像是一回事。

您可能所做的一切都是正确的,但 iOS(尤其是在模拟器中)通常不会在开发过程中更改这些内容(启动画面、图标等)。尝试删除您的应用,清理您的项目(在 Xcode 中:Product -> Clean (shift+cmd+k))并重新安装您的应用。

【讨论】:

谢谢,但是没有用。应用程序图标正确但启动图像不正确,所以我认为不是缓存问题。 不看你的项目就很难找到解决方案。它现在是否仍然显示 Phonegap 闪屏或根本没有闪屏? 在我的情况下,删除应用程序并重新安装它是 jonas 建议的最后一步。

以上是关于为啥 PhoneGap 总是显示默认的启动画面?的主要内容,如果未能解决你的问题,请参考以下文章

Phonegap 3.4.0 IOS 闪屏显示默认

在 PhoneGap/Cordova 1.5.0 中显示启动画面

phonegap 从哪里拉启动画面?替换了xcode中的所有图像

如何在启动时更改 phonegap/cordova 状态栏背景(启动画面)?

新版cordova/phonegap启动画面会淡入淡出怎么解决

Phonegap (cordova) 2.4.0 启动画面显示缩小