我有一个权限库,目前可以与 Cocoapods 和 Carthage 一起正常使用,但是我想添加 Swift Package Manager 支持。该库需要指定某些用户定义的生成设置,例如:
CAMERA_PERMISSION
因为在我的代码中,我添加了一些宏,例如:
#if CAMERA_PERMISSION
...
#endif
这是为了避免发布最终用户未真正使用的调用权限API的代码,因此不必解释App Review Team为什么仅使用通知的Notes应用程序需要相机权限。
这在 Cocoapods 中很容易实现,这要归功于我在subspec
.podspec
在 Carthage 中是一个不同的故事,我不得不在我的代码中添加.xcconfig
文件,该文件基本上引用了我请求用户使用的同一.xcconfig
文件添加他的项目。这很容易,因为我只需要指定:
?include '../../../../config.xcconfig'
要从 Carthage 构建文件夹中一直到用户项目的根目录。
但是我对如何在Swift Package Manager中实现这一目标感到迷茫。
有什么想法吗?谢谢!