如何在 iPhone6和6 Plus 上为应用程序启用本地分辨率?

Xcode 6 GM 现在包含了 iPhone 6和6 Plus 的模拟器,默认情况下,它们以缩放模式运行应用程序。

为了启用新的屏幕大小,我尝试添加 Default-667h@2x.png,这似乎起到了部分作用,因为应用程序现在根本无法运行,错误是“无法在模拟器中运行应用程序-运行时遇到错误(Domain = LaunchServicesError,Code = 0)”。

有人知道如何让一个应用程序在6/6以上的分辨率下运行吗?

102471 次浏览

如果您正在使用资产目录,请转到 LaunchImages 资产目录并添加两款新 iPhone 的新启动映像。您可能需要右键单击并选择“添加新启动图像”,以查看添加新图像的位置。

IPhone6(Retina HD 4.7)需要750 x 1334的发布图像。

IPhone6 Plus (Retina HD 5.5)要求人像和风景图像的大小分别为1242 x 2208和2208 x 1242。

您可以添加一个启动屏幕文件,该文件似乎适用于多个屏幕大小。我刚刚添加了 MainStoryboard 作为一个启动屏幕文件,这阻止了应用程序的扩展。我想我稍后需要添加一个永久的启动屏幕,但是这使得原生分辨率提高并且工作得很快。在 Xcode,找到你的目标,将军,在那里添加发射屏幕文件。

Launch Screen File

运行时遇到错误(Domain = LaunchServicesError,Code = 0)

通常这表示安装过程中安装返回了一个错误(错误的资源或类似的)。

遗憾的是,Xcode 没有显示实际的底层错误(可以自由地对这个已知错误进行文件欺骗)。

您应该检查 ~/Library/Logs/CoreSimulator/CoreSimulator.log,它将为您记录底层错误。

我不想引入资产目录。

根据 Seahorseeaeo 给你的回答,将以下内容添加到 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>

我做了一些基本的黑色启动界面,可以让应用程序在 iPhone6和 iPhone6 + 上正常扩展:

IPhone6肖像

IPhone 6 Plus Portrait

如果您的。Xcassett,打开它,切换到 Xcode 右边菜单的第三个标签,勾选 iOS 8.0的 iPhone 图片,将它们添加到现有的设置中。然后把图片拖过来:

enter image description here

请注意,如果你在 iPhone > 设置 > 显示和亮度 > 查看中启用了“显示缩放”,iPhone 6将使用320pt (640px)分辨率。

做到以下几点(见图)

  1. 后台资产目录
  2. 右击并选择“添加新启动图像”

    • IPhone 6-> 750x1334
    • IPhone 6 Plus-> 1242 x 2208和2208 x 1242

enter image description here

如果您正在使用资产目录,并且有多个目标都使用相同的资产目录文件,请确保该文件已经在 xcode 的右面板中检查了这两个目标。

那是我的问题。

enter image description here