You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何在Release构建中排除Info.plist中的自定义值?

解决Xcode中Release构建排除Info自定义键值的问题

你删除Info.plist后这些值还保留,是因为Xcode的Info标签页设置会同步写入项目的构建设置(对应INFOPLIST_KEY_前缀的配置项),这些构建设置会直接参与最终的App打包,和是否存在物理的Info.plist文件无关。

下面是具体操作步骤:

方法一:通过Info标签页按构建配置区分

  1. 选中你的项目目标,切换到「Info」标签页
  2. 找到你添加的NSLocalNetworkUsageDescription和NSBonjourServices这两个键
  3. 点击每个键右侧的配置下拉菜单(默认显示「All, Any SDK」),选择「Debug」——这样该键值只会在Debug构建中生效
  4. 切换到Release配置视图(点击Xcode顶部工具栏的配置选择器,选「Release」),然后直接删除这两个键(选中键行后按Delete键)

方法二:通过Build Settings直接修改

  1. 选中项目目标,切换到「Build Settings」标签页
  2. 在搜索框输入INFOPLIST_KEY_NSLocalNetworkUsageDescription,找到对应的配置项
  3. 点击该行展开Debug和Release的分配置:
    • Debug配置保留原有的描述文本
    • Release配置清空内容(直接删除文本即可)
  4. 对INFOPLIST_KEY_NSBonjourServices执行同样操作:Debug保留数组内容,Release清空

验证是否生效

构建Release版本后,找到生成的.app包,右键选择「显示包内容」,打开里面的Info.plist,确认NSLocalNetworkUsageDescription和NSBonjourServices这两个键已经不存在。

你要排除的具体键值对如下:

<dict>
    <key>NSLocalNetworkUsageDescription</key>
    <string>Access to the local network for development builds</string>
    <key>NSBonjourServices</key>
    <array>
        <string>_nslogger._tcp</string>
        <string>_nslogger-ssl._tcp</string>
    </array>
</dict>

内容的提问来源于stack exchange,提问作者BobC

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.08 15:42:12