问题标签 [xcode-build-settings]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
0 回答
22 浏览

xcode - 递归地将 -arch 选项应用于 Xcode 项目的所有依赖项

我有一个使用 xcodebuild 命令行工具构建 Xcode 项目列表的脚本。在引入通用构建之后,我们在 xcconfig 文件和 Xcode 项目的构建设置中引入了标准架构。现在我想添加一个选项来仅构建给定的拱门。为此,我添加了选项 -arch 。这适用于我使用列表构建的项目。当系统尝试在内部构建依赖项目时会出现问题,并且由于架构设置为通用,因此无法构建,因为它的依赖关系现在仅是 Intel 或仅 arm64。我可以给 xcodebuild 一些论据以将 -arch 选项也应用于其所有依赖项。

0 投票
0 回答
23 浏览

xcode - Xcode 的预处理器宏中的 $(inherited)

我正在寻找定义额外的预处理器宏来为我的 Xcode 项目启用自定义构建设置。我注意到对于某些配置,有一个 $(inherited) 属性会自动填写 DEBUG=1 和 COCOAPODS=1。这些继承的属性从何而来?我可以将自己的属性添加到该原始列表中,以便我也可以继承这些属性吗?

在此处输入图像描述

0 投票
0 回答
12 浏览

xcode-build-settings - Salesforce 登录失败:登录 Salesforce 失败

运行 buildspec 时出现以下错误,无法登录:无法将请求发送到 https://${salesforce.serverurl}/services/Soap/u/ 任何提示?

0 投票
1 回答
57 浏览

xcode - Xcode SwiftUI 预览构建设置

我正在使用方案运行预构建脚本。我的脚本启用了从正在构建的目标提供构建设置的选项。当为 SwiftUI 预览构建项目时,也会执行此脚本。如果正在运行的构建是常规构建还是用于预览,我需要在此脚本中知道。有没有办法做到这一点以及如何做到这一点?

我尝试export在两种情况下都在脚本中运行,但似乎所有环境变量在两种情况下都是相同的。

0 投票
0 回答
22 浏览

swift - 应用程序的 xib/storyboard 如何从资产目录(这是一个 swift 包资源)中渲染图像?

关于

我们的资产目录从 App 目标移动到 swift 包资源。Copy Bundle Resources之后,除非通过阶段复制资产目录(这意味着编译的应用程序中有 2 个副本),否则应用程序现有的故事板/xib 将无法再渲染这些资产。有没有更好的办法?

考虑迁移资产目录之前和之后的工作空间。

迁移 Assets.xcasset 之前

应用程序按预期工作。此处设置的典型资产目录。图像以多种方式使用:

  • 以编程方式(UIKit 和 SwiftUI)
  • 视觉上(xib 和故事板)

之后(将 Assets.xcassets 移至 MyPackage)

  • 创建一个新的 swift 包 (MyPackage)
  • 移动到Assets.xcassets_Assets.swiftMyPackage
  • MyPackage/Package.swift, 调用.process("Resources/Assets.xcassets")
  • 将我们的程序化图像访问器更改为public范围

这是我们开始遇到问题的地方。

问题

  • [通过]MyPackage和应用程序都编译没有警告/错误。链接和启动就好了
  • [通过] 在运行时,任何对图像的编程引用都会按预期呈现。
  • [失败] 在运行时,任何呈现的 xib/storyboard 文件都无法渲染图像。
    • [注意] 如果我在 Xcode 中检查 xib/storyboard,图像会呈现。
    • [注意] 如果我单击图像(好像我要选择另一个),弹出列表会正确呈现Assets.xcassets.

因此,Xcode 对图像有足够的了解来渲染它们,并且可以在没有警告或错误的情况下进行编译,但是在运行时图像会丢失。

解决方案(有副作用)

在四处寻找之后,我找到了一个可行的解决方案(但我不满意):

在应用程序的构建阶段设置中,我添加了一个复制项目MyPackage/Sources/MyPackage/Resources/Assets.xcassets

再次编译/运行后,图像可以正确渲染为故事板/xibs。很好,但有一些不良副作用:

  1. 编译/链接的二进制文件包含两个Assets.xcassets. 一进MyPackage一出就是复制到App Bundle。
  2. 在 Xcode 中,Assets.xcassets在项目中出现两次。一个在MyPackage应用程序源的根目录中。在不中断复制阶段的情况下无法移动或隐藏它。它们至少是符号链接的,所以编辑就是编辑另一个。

备择方案?

是时候寻求帮助了。我认为这不是最好的/预期的方式。我已经用尽了我的 google-fu。在 Apple 的文档中找不到详细信息。

我想象有一种更自定义的方式来执行复制步骤(可能不包括 Package.swift 中的资产目录)?或者可能是在“构建规则”选项卡中编译资产目录的一种方式?

还是我做对了?

0 投票
0 回答
20 浏览

ios - 父捆绑包具有与子捆绑包相同的标识符 (bundle.identifier)

所以我最近刚刚在我的项目中添加了一个 POD,然后要求我使用/加载工作区而不是单个项目。这一切都很好,但现在我们用于最终构建项目的构建脚本(见下文)将成功构建,但在安装时,我在尝试安装时检查设备控制台日志(粘贴在下面的一些行)时发现由于父包标识符与子包相同(我假设这是指我添加的这个库 - JSONWebToken),因此它无法这样做。

我想我的问题是我该如何解决这个问题?我们有一个附加了适当 bundleId 的脚本(我们有多个从同一个代码库构建的应用程序)。在我看来,xcodebuild 将正确地将此 bundleId 用于主应用程序,但它也将它用于 POD 包。如何使用 xcodebuild 解决这个问题?

0 投票
0 回答
11 浏览

xcode-build-settings - COMPILER_INDEX_STORE_ENABLE xcode 构建设置的默认值是什么?

有 Default、YES、NO,但 Default 值是多少?是或否?

https://xcodebuildsettings.com/#compiler_index_store_enable

在此处输入图像描述

0 投票
1 回答
23 浏览

swift - 构建期间未设置 Cocoapods EXCLUDED_ARCHS 标志

我正在尝试构建我的项目,但在部署到模拟器而不是实际设备时不断收到“未找到模块”。在四处挖掘之后,我发现我应该为我的所有目标添加 arm64到建筑设置的Excluded Archtiectures部分。

我用这个SO question作为参考,但是arm64没有设置。

有人看到我做错了什么吗?