Xcode 6 GM 现在包括 iPhone 6 和 6 Plus 的模拟器,默认情况下它们以缩放模式运行应用程序。
为了启用新的屏幕尺寸,我尝试添加Default-667h@2x.png
这似乎起到了部分作用,因为应用程序现在根本无法运行,并出现错误“无法在模拟器中运行应用程序 - 运行时遇到错误(域 = LaunchServicesError,代码 = 0)"。
有没有人想出如何让应用程序真正以 6/6+ 分辨率运行?
Xcode 6 GM 现在包括 iPhone 6 和 6 Plus 的模拟器,默认情况下它们以缩放模式运行应用程序。
为了启用新的屏幕尺寸,我尝试添加Default-667h@2x.png
这似乎起到了部分作用,因为应用程序现在根本无法运行,并出现错误“无法在模拟器中运行应用程序 - 运行时遇到错误(域 = LaunchServicesError,代码 = 0)"。
有没有人想出如何让应用程序真正以 6/6+ 分辨率运行?
您可以添加看起来适用于多种屏幕尺寸的启动屏幕文件。我刚刚将 MainStoryboard 添加为启动屏幕文件,这阻止了应用程序的缩放。我想我稍后需要添加一个永久启动屏幕,但这可以提高原始分辨率并快速运行。在 Xcode 中,转到您的目标,一般并在那里添加启动屏幕文件。
如果您正在使用资产目录,请转到 LaunchImages 资产目录并为两个新 iPhone 添加新的启动图像。您可能需要右键单击并选择“添加新启动图像”以查看添加新图像的位置。
iPhone 6 (Retina HD 4.7) 需要 750 x 1334 的纵向启动图像。
iPhone 6 Plus (Retina HD 5.5) 需要尺寸分别为 1242 x 2208 和 2208 x 1242 的纵向和横向图像。
我制作了基本的黑色启动屏幕,可以使应用程序在 iPhone 6 和 iPhone 6+ 上正常缩放:
如果您的 .xcassett 中已经有一个 LaunchImage,请打开它,切换到 Xcode 右侧菜单中的第三个选项卡,然后勾选 iOS 8.0 iPhone 图像以将它们添加到现有集合中。然后将图像拖过来:
我不想介绍资产目录。
根据 seahorseseaeo here的回答,将以下内容添加到 info.plist 对我有用。(我将其编辑为“源代码”。)然后我将图像命名为 Default-667h@2x.png 和 Default-736h@3x.png
<key>UILaunchImages</key>
<array>
<dict>
<key>UILaunchImageMinimumOSVersion</key>
<string>8.0</string>
<key>UILaunchImageName</key>
<string>Default-667h</string>
<key>UILaunchImageOrientation</key>
<string>Portrait</string>
<key>UILaunchImageSize</key>
<string>{375, 667}</string>
</dict>
<dict>
<key>UILaunchImageMinimumOSVersion</key>
<string>8.0</string>
<key>UILaunchImageName</key>
<string>Default-736h</string>
<key>UILaunchImageOrientation</key>
<string>Portrait</string>
<key>UILaunchImageSize</key>
<string>{414, 736}</string>
</dict>
</array>
请注意,如果您在 iPhone > 设置 > 显示和亮度 > 视图中启用了“显示缩放”,iPhone 6 将使用 320pt (640px) 分辨率。
执行以下操作(见照片)
右键单击并选择“添加新的启动图像”
运行时遇到错误(域 = LaunchServicesError,代码 = 0)
通常这表明 installd 在安装过程中返回了错误(资源错误或类似情况)。
不幸的是,Xcode 没有显示实际的底层错误(请随意归档这个已知错误的欺骗)。
您应该检查~/Library/Logs/CoreSimulator/CoreSimulator.log它将为您记录底层错误。