相关疑难解决方法(0)

在cocoapods podspec文件中定义标题搜索路径

我对我创建的框架的podspec文件的定义存在问题.我有以下文件结构:

/
|-- module1/<source files>
|-- module2/<source files>
...
|-- moduleN/<source files>
|-- core-api/
|    |-- module1/<header files>
|    |-- module2/<header files>
|    ...
|    +-- moduleN/<header files>
|-- framework.podspec
+-- framework.xcodeproj
Run Code Online (Sandbox Code Playgroud)

在XCode中我添加$(SRCROOT)/core-apiUSER_HEADER_SEARCH_PATHS以便Xcode可以正确找到公共头文件.

我的podspec文件如下所示:

s.default_subspec = 'module1'

s.subspec 'module1' do |ss|
  ss.source_files               = "module1/**/*.{h,m}"
end

s.subspec 'module2' do |ss|
  ss.source_files               = "module2/**/*.{h,m}"
end

...

s.subspec 'moduleN' do |ss|
  ss.source_files               = "moduleN/**/*.{h,m}"
end
Run Code Online (Sandbox Code Playgroud)

目前,没有指令定义core-api的头位置.当我这样做时,pod lib lint我得到错误,找不到相应的core-api标头.

我瞎搞用ss.header_dir,ss.header_mapping_dir,s.xcconfigUSER_HEADER_SEARCH_PATH,但他们没有为我工作. …

xcode specifications header cocoapods

8
推荐指数
1
解决办法
5582
查看次数

可能有一个CocoaPods有一个包含主应用程序的搜索路径

这是我第一次写自己的Cocoapod所以这可能是一个非常简单的quedstion但....

我正在尝试使用Cocoapods为我们公司内部使用的一系列应用程序分发公共代码(CocoaPod称为CommonHex,前缀为HEX,因此HEXItem.h/m).但是,我们有一个特定于每个应用程序的配置文件,名为HOSTConfig.h/m.有没有办法从我们的CommonHex pod中访问这个HOSTConfig.h/m?

看起来我应该能够拥有一个配置文件,它具有自己的值,但是如果它存在的话会引入HOSTConfig.h/m?并且可能必须扩展搜索路径或其他东西.

所以我喜欢:

MainApp
\-MainApp
   \-HOSTConfig.h/m

CommonHex
\-Classes
   \-HEXItem.h/m
   \-HEXItemViewController.h/m  
Run Code Online (Sandbox Code Playgroud)

我希望这能够通过另一个类访问HOSTConfig.h/m,如果HOSTConfig.h/m存在于托管应用程序中,它使用这些值,否则它使用我们的CocoaPod中的值

编辑#1

所以在CommonHex.podspec中,我有以下但这似乎不起作用:

  s.source_files  = "Classes", "Classes/**/*.{h,m}", "$(PROJECT_DIR)/HOSTConfig.{h,m}"
Run Code Online (Sandbox Code Playgroud)

ios cocoapods

6
推荐指数
1
解决办法
1034
查看次数

标签 统计

cocoapods ×2

header ×1

ios ×1

specifications ×1

xcode ×1