ios - 将 CocoaPods 与 2 个项目一起使用时,运行时输出 objc[69590]

标签 ios objective-c xcode cocoapods multi-project

我创建了 2 个 xcode 项目“mylib”和“myapp”

  • mylib 的项目类型为“iOS -> Cocoa Touch Framework
  • myapp 的项目类型为“iOS -> 应用程序 -> 单 View 应用程序”。

这两个项目都依赖于“AFNetworking”,所以我编写了下面的 Podfile。

workspace 'myapp'

platform :ios,'7.0'
xcodeproj 'myapp/myapp.xcodeproj'

target :myapp do
    xcodeproj 'myapp/myapp.xcodeproj'
    pod 'AFNetworking', '~> 2.5.4'
end

target :mylib do
    xcodeproj 'mylib/mylib.xcodeproj'
    pod 'AFNetworking', '~> 2.5.4'
end

运行“pod install”后,我得到 https://github.com/everettjf/cocoapods_two_projects_obj69272 ,并且构建没有错误。

但是当我在“iOS模拟器”中运行时,控制台窗口中输出了很多警告消息。

objc[69590]: Class AFHTTPRequestOperation is implemented in both /Users/everettjf/Library/Developer/Xcode/DerivedData/myapp-exzydcmjfladtpgxcrxfchlkcmux/Build/Products/Debug-iphonesimulator/mylib.framework/mylib and /Users/everettjf/Library/Developer/CoreSimulator/Devices/409F22C7-031F-495C-BE66-EE4712D0D469/data/Containers/Bundle/Application/A94992B7-C057-4842-9B64-D8B8E2E5E4DE/myapp.app/myapp. One of the two will be used. Which one is undefined.
objc[69590]: Class AFHTTPRequestOperationManager is implemented in both /Users/everettjf/Library/Developer/Xcode/DerivedData/myapp-exzydcmjfladtpgxcrxfchlkcmux/Build/Products/Debug-iphonesimulator/mylib.framework/mylib and /Users/everettjf/Library/Developer/CoreSimulator/Devices/409F22C7-031F-495C-BE66-EE4712D0D469/data/Containers/Bundle/Application/A94992B7-C057-4842-9B64-D8B8E2E5E4DE/myapp.app/myapp. One of the two will be used. Which one is undefined.
objc[69590]: Class AFHTTPSessionManager is implemented in both /Users/everettjf/Library/Developer/Xcode/DerivedData/myapp-exzydcmjfladtpgxcrxfchlkcmux/Build/Products/Debug-iphonesimulator/mylib.framework/mylib and /Users/everettjf/Library/Developer/CoreSimulator/Devices/409F22C7-031F-495C-BE66-EE4712D0D469/data/Containers/Bundle/Application/A94992B7-C057-4842-9B64-D8B8E2E5E4DE/myapp.app/myapp. One of the two will be used. Which one is undefined.
objc[69590]: Class AFNetworkActivityIndicatorManager is implemented in both /Users/everettjf/Library/Developer/Xcode/DerivedData/myapp-exzydcmjfladtpgxcrxfchlkcmux/Build/Products/Debug-iphonesimulator/mylib.framework/mylib and /Users/everettjf/Library/Developer/CoreSimulator/Devices/409F22C7-031F-495C-BE66-EE4712D0D469/data/Containers/Bundle/Application/A94992B7-C057-4842-9B64-D8B8E2E5E4DE/myapp.app/myapp. One of the two will be used. Which one is undefined.
...(more)

我该如何解决它?谢谢。

最佳答案

最后我找到了2个解决方案。

  1. 解决方案1

    mylib -> 目标(mylib) -> build设置 -> 链接 -> Mach-O 类型:静态库

  2. 解决方案2

    只需添加“use_frameworks!”到 Podfile

更多信息请参见here

关于ios - 将 CocoaPods 与 2 个项目一起使用时,运行时输出 objc[69590],我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32109812/

相关文章:

ios - Swift iOS 应用程序不使用 Socket.IO 连接到服务器

objective-c - NSEvent charactersIgnoringModifiers随机抛出 "TSMProcessRawKeyCode failed"异常

objective-c - MBProgressHUD 和 SDWebImage - HUD 未显示

ios - TestFlight 无法完成测试者应用程序升级

ios - 从 iOS Swift 中的 xml 文本文件中提取 Json

Objective-C – 拥有一个包含 TestFlight SDK 的 TestFlight 配置

ios - View Controller 的主视图有时在状态栏下,有时不在状态栏下

iphone - 识别使用 UIBezierPath 绘制的不同形状?

ios - 函数 '_strnicmp' 的隐式声明在 C99 中无效

ios - getObjectInBackgroundWithId : using pointer [ Parse ]