为啥 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/Cordova 1.5.0 中显示启动画面
phonegap 从哪里拉启动画面?替换了xcode中的所有图像
如何在启动时更改 phonegap/cordova 状态栏背景(启动画面)?