Xcode 13 中的 Info.plist 在哪里? (缺失,不在项目导航器内)

Posted

技术标签:

【中文标题】Xcode 13 中的 Info.plist 在哪里? (缺失,不在项目导航器内)【英文标题】:Where is Info.plist in Xcode 13? (missing, not inside project navigator) 【发布时间】:2021-08-26 00:01:08 【问题描述】:

有人知道如何在 Xcode 13 的 Info.plist 中添加/编辑值吗?我看到他们将 Info.plist 从导航器窗格中移走了...但是虽然我可以找到它,但我不知道如何编辑它。

【问题讨论】:

【参考方案1】:

这是一个“功能”。

你不再需要它了。来自Release Notes:

从多个模板创建的项目不再需要配置文件,例如权利和 Info.plist 文件。在目标的 Info 选项卡中配置公共字段,并在项目编辑器中构建设置。使用附加字段时,这些文件将添加到项目中。 (68254857)

因此,不要在Info.plist 内部,而是在此处编辑NSCameraUsageDescription 之类的属性:

Project -> Targets -> Info -> Custom ios Target Properties

第一次添加/编辑时,Xcode 会自动生成一个新的Info.plist 文件,该文件与Custom iOS Target Properties 同步1。 Xcode 稍后会为您合并它们。

[1]:它们没有完全同步。像NSCameraUsageDescription 这样的一些属性只会出现在自定义iOS 目标属性中,而Application requires iPhone environment 会同时出现在两者中。我不知道 Xcode 是如何确定这一点的。


想要Info.plist 回来,完全吗?

您可能希望将应用的所有属性集中在一个位置。或者也许你不相信 Xcode 的合并。我在 WWDC21 上与一位 Apple 工程师讨论过这个问题……这里是如何找回经典的 Info.plist

    创建一个新的“属性列表”文件(File -> New -> File

    将其命名为Info.plist

    将现有值从Project -> Targets -> Info -> Custom iOS Target Properties 复制并粘贴到Info.plist
Copy Paste

注意:目前您一次只能选择和复制 1 行。如果您想节省一些时间,这里是 XML 格式的default contents。要使用它,请右键单击 Info.plist -> Open As -> Source Code,然后粘贴。

    将路径复制到属性检查器中的Info.plist

    在此处粘贴路径:
Project -> Targets -> Build Settings -> Info.plist File

    Generate Info.plist File设置为

    最后一步。从Copy Bundle Resources 中删除Info.plist(选择,然后按- 按钮)。
Project -> Targets -> Build Phases -> Copy Bundle Resources

是的,很多。但是,您是否想要经典的 Info.plist 取决于您 — 两者都可以,并且不会改变您的应用。

【讨论】:

你可能指的是减号按钮,而不是加号按钮。 这绝对没有意义!第一次添加/编辑时,Xcode 会自动生成一个新的 Info.plist 文件,该文件与自定义 iOS 目标属性同步 1。 Xcode 稍后会为您合并它们。 我已经编辑过了,还是没有plist文件!!近年来,Apple 和 Xcode 变得多么混乱! 当心 - 不要对 Info.plist 文件使用绝对路径,从项目根目录的相对路径是可以的,并且在另一台计算机上构建时不会中断。 嗯,所以在这个新的“plist”中。如何添加新属性?我没有看到顶部的加号编辑:知道了。按下加号,例如“捆绑名称”,它可以工作

以上是关于Xcode 13 中的 Info.plist 在哪里? (缺失,不在项目导航器内)的主要内容,如果未能解决你的问题,请参考以下文章

Xcode13 “消失”的Info.plist文件

Xcode13 “消失”的Info.plist文件

UIUserInterfaceStyle 键在 Xcode 12 的 Info.plist 中不可用,如何从 Info.plist 禁用 Xcode 12 中的暗模式?

当应用程序在苹果商店或 testFlight 上发布时,plist 中的框架版本号由 XCode 13 更改

Xcode 项目中的两个 info.plist 文件如何工作?

Xcode 6/iOS - 缺少存档和 Info.plist