问题标签 [xcode-workspace]
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.
ios - 如何从 iOS 中的框架访问主机应用程序版本?
对于一个大型项目,我在同一个工作区中有一个主机应用程序MyApp
和一个链接框架。假设由于某些原因需要知道发布版本(或当前版本号)。我该如何处理这种情况?框架无论如何都可以访问主机应用程序吗?还是有更好的设计?MyFramework
iOS
MyFramework
MyApp
.plist
ios - 为什么在 Xcode 中有一个与我的常规项目分开的“Pods”项目?
设想:
当我在 Xcode 中打开我的项目的 iOS 文件夹时,我InTow
在导航器区域中看到两个单独的项目:InTow
和Pods
.
同样,当我在ios/
文件夹中递归搜索时,只有两个.xcodeproj
文件:InTow.xcodeproj
and Pods.xcodeproj
,并且只有一个.xcworkspace
文件:InTow.xcworkspace
.
我的问题是:
当我在 Xcode 中单击打开ios/
文件夹时,它会执行以下哪个操作?
1)寻找.xcworkspace
它找到的第一个文件,然后打开它?如果是这样,InTow
和Pods
项目在 Xcode 中打开的原因是那些是引用的两个项目InTow.xcworkspace
吗?一个文件夹是否ios/
总是只包含一个.xcworkspace
文件?
2)查找所有.xcodeproj
文件,并打开相应的项目?
3) 别的?
swift - 快速工作区中的 GitHub 操作
我正在尝试使用 Github Actionsxcodebuild
在我的xcworkspace
. 但是,任何配置都失败并出现错误Unable to find a destination matching the provided destination specifier: { platform: iOS Simulator, OS: latest, name:iPhone 11 Pro }
这是我的swift.yml
文件
如您所见,我还在 CI 机器上记录所有可用设备。这清楚地向我展示了几部 iPhone 11 Pro (Max)。
我已经尝试过的事情:
- 使用特定的操作系统版本
- 降低构建目标
- 强制 Xcode 版本为 11.3
- grep 上述列表中模拟器的 ID 并使用该 ID 代替 name 参数
- 在运行测试之前启动模拟器
我错过了什么明显的东西吗?
干杯和快乐的编码。
ios - 工作区中的多个子项目
我一直在服务器端的 Android 和 Java 等其他几个环境中以这种方式工作,我们称之为多模块项目,但我发现很难在 XCode for iOS 项目中实现它。
这个想法是将一个项目分解成更小的子项目,每个子项目可能有自己的故事板、自己的类和具有隐式命名空间的结构。
基础项目将是带有目标的单视图应用程序,这是结构的样子。
BaseApp 可以加载/卸载或挂载/卸载 ModuleA 和 ModuleB 的故事板。
ModuleA 或 ModuleB 可以是任何类型的项目。
我使用来自 baseapp 的故事板引用做了一些尝试,并尝试在 ModuleA 或 ModuleB 中加载故事板,但它无法找到它的引用。
想知道如何在 XCode 中实现 Multi-Modular 项目吗?
swift - 在 Xcode 工作区中加载 txt 文件资源
我有一个 txt 文件,可以在客户端应用程序中正常加载,使用:
但是当将同一个文件添加到服务器目标(同一个 Xcode 项目工作区中的 SwiftWebSocketServer)时,do 语句会中断。我尝试了许多解决方案,包括:
Bundle.main.path(forResource... 查找 xml 文件时总是返回 nil
但是思考与将其添加到 Target --> Build Phases --> 有关系吗?..尝试将其添加到编译源(不起作用),将文件移动到根目录,进入文件夹(组和引用),认为它与添加到目标有关->构建阶段->'复制文件,但不确定目标/路径等。
任何意见,将不胜感激。
xcode12 - 命令 PhaseScriptExecution 失败,退出代码为非零,Xcode 12.4
我可以在模拟器上运行我的应用程序。然而,在真实设备上,我被要求提供我的钥匙串密码,然后构建失败
从日志:
我试图删除派生数据,清理我的项目,重新启动 xcode 和我的机器,删除工作区和 podfile.lock 并生成新的。没有什么帮助。
有任何想法吗?这是代码签名/证书问题吗?
我注意到在我的 Xcode 项目导航器中,在 Pods/Frameworks 下,所有框架都是红色的,包括 AppAuth.framework。查看 Xcode 文件检查器中的框架完整路径,我注意到引用的路径不存在。该路径指向 DerivedData/Products 下的“Debug”文件夹,但我只有一个“Debug-iphoneos”,在该文件夹下我可以看到框架。我认为这解释了框架是红色的(即找不到)?
“纠正”完整路径可能会解决所有这些问题,我将如何做到这一点?
ios - 如何将带有 cocopods 的 Xcode 项目添加到 github
我按照此链接将项目添加到 GitHub。我可以使用这些说明成功创建存储库。
但无法将带有 pods(.xcworkspace) 的 Xcode 项目添加到 GitHub。我知道我们应该只添加 podfile 来减少负载。但不知道如何实现这一点。
xcode - 具有两个依赖项目和 CocoaPods 的 Xcode 工作区
我有一个项目,它包含一个 PrefPane 和一个包含 LSUIElement 的 .app 包。基本上,用户安装 prefpane,prefpane 将包含的 .app 添加到登录项(如果未运行,则启动它),以便项目的“守护程序”部分始终运行(当然,如果从 prefpane 启用。
现在,项目结构有点混乱,prefpane 项目中有一个“cp”构建阶段,它将 .app 复制到 Contents/Resources。由于这不会在将 .app 复制到 prefpane 之前自动负责重建 .app,因此这不太理想。
现在我想将 Sparkle 添加到组合中,所以我创建了一个指向“守护程序”.app 项目的 podfile,因为这样就可以每天进行背景检查。这将创建一个 xcworkspace,在构建守护程序时可以正确处理 Sparkle 依赖项。
现在,我也想将 PrefPane 项目添加到工作区,以便可以一起构建所有内容。但是,如果两个 .xcproject 都位于工作区的根级别,就在 Pods 项目旁边,我无法将 Daemon .app 目标添加为 PrefPane 的依赖项。我首先必须将守护进程的项目拖到 prefpane 项目的“下方”,这会创建一个“副本”/另一个引用。现在我可以将守护程序的 .app 目标添加为依赖项,还可以将 .app 添加到 Copy Files 阶段。但是当我构建工作区时,只构建了 .app 项目和 cocoapods。prefpane 目标在清洁和重建后保持红色。
这里发生了什么?
swift - Xcode 导入本地 Swift 包并从应用程序构建
目标是将本地 Swift 包“共享”导入 Xcode 项目,并将它们都放在工作区中。
我创建了一个工作区,将包和项目拖放到其中,然后通过将包添加到框架、库和嵌入式内容中,将包添加到应用程序中。
这在从工作区构建时有效!但我必须让它也可以从应用程序项目构建,目前它抛出:“缺少包产品'共享'”。
我知道可以做我想做的事,因为我有一个可以工作的示例项目,其中 Shared 被列为应用程序项目中的本地 Swift 包,在我的项目中不是。在项目中,Shared 列在 Frameworks、Libraries 和 Embedded Content 下,但删除引用后无法再次添加。
如果有人可以帮助我,那就太好了!