Tag: cocoapods

Swift框架取决于cocoa豆荚

使用最新版本的cocoa豆荚(0.36),我可以将用swift编写的cocoa豆荚(例如Alamofire)embedded到我的swift项目中。 现在我介绍了一个我自己的定制框架,也希望依靠Alamofire。 我所做的是为了做到这一点是select添加框架作为依赖我的框架: 为我自己的embedded式Swift框架(Swift模块)select目标,并在“链接的框架和库”的“常规”选项卡中添加“Pods.framework”为“必需”。 然而,这是不够的,因为我自己的快速框架中的类不能被认为是“可用的框架”,因此不能“导入Alamofire”。 将Pods.debug.xcconfig和Pods.release.xcconfig文件添加到我自己的swift框架的目标的configuration中,换句话说就是改变生成设置来完成所有的更改,cocoa豆做到我的生成设置iOS应用的目标,解决了这个问题。 现在build立没有问题。 它也在Simulator中没有问题,我自己的embedded式Swift框架成功地使用了cocoa豆荚添加的框架。 但是,如果我在设备上运行相同的程序,它会编译和安装没有问题,但在启动时发生致命错误崩溃: dyld: Library not loaded: @rpath/Pods.framework/Pods Referenced from: /private/var/mobile/Containers/Bundle/Application/32D2F1F8-679F-4A5F-8159-28F1C800D0C6/TestingFrameworks.app/Frameworks/mySwiftFramework.framework/mySwiftFramework Reason: image not found 显然不是来自cocoa豆荚xcconfig文件的所有设置都适合添加到我的自定义swift框架的构build设置。 但是为什么它在模拟器中工作呢? 更重要的是什么是构build设置,我需要纠正? 对我来说,它看起来像我需要改变这种构build设置: PODS_FRAMEWORK_BUILD_PATH = $(BUILD_DIR)/$(CONFIGURATION)$(EFFECTIVE_PLATFORM_NAME)/Pods 别的东西

使用现有的静态库和iOS应用程序configurationCocoapods

我无法让我的工作空间与Cocoapods正确编译。 在工作区有3个项目,每个项目都有自己的目标: libPods – 具有所有外部依赖关系的Cocoapods静态库 libCommon – 我的静态库,我保留所有的共享代码(基本控制器,networking代码,通用用户界面等) myApp – 我的iOS应用程序 libCommon和myApp都需要libPods的外部依赖。 本来我认为它会这样工作: libPods构build libCommon链接对libPods和生成 myApp与libCommon链接并构build 在这种情况下libCommon“拥有”豆荚,然后myApp只是链接反对libCommon像我一直做的Cocoapods前…但显然静态库不喜欢与静态库链接(我有一堆dynamic库错误)。 我读了一个github问题的地方,而不是我应该build立libPods和libCommon,然后我的应该链接两个库。 现在我的podfile看起来像这样: workspace 'MyApp.xcworkspace' platform :ios, '5.0' link_with ['Common', 'MyApp'] target 'MyApp' do xcodeproj 'MyApp.xcodeproj' pod 'AFNetworking', '1.1.0' pod 'TTTAttributedLabel', '1.6.0' pod 'JSONKit', '1.5pre' pod 'Reachability', '3.1.0' end 使用这个设置,myApp拥有所有的豆荚,然后在libCommon的生成设置中,我指定了豆荚头的path。 这个构build好,直到我尝试使用libCommon中的一个类。 一旦我这样做,我得到_OBJC_CLASS_$_Blah错误之一(这告诉我,虽然头可用,它仍然没有正确链接)。 当我尝试在“Build Phases”中手动链接libCommon时,我得到一堆重复的符号错误(这让我相信它已经链接了)。 有没有搞错? 有什么办法做到这一点,我的podfile应该是什么样子?

更新到Xcode 8后的错误:“没有这样的模块”和“目标覆盖EMBEDDED_CONTENT_CONTAINS_SWIFT”build立设置“

当我尝试构build项目时,我No such module获得No such module Pod的No such module 。 如果我删除期望这个Pod的代码,另一个“没有这样的模块”出现在另一个Pod上,这意味着每个Pod都必须受到影响。 当我键入pod install我收到以下消息: [!] The X target overrides the `EMBEDDED_CONTENT_CONTAINS_SWIFT` build setting defined in `X'. This can lead to problems with the CocoaPods installation – Use the `$(inherited)` flag, or – Remove the build settings from the target. [!] The `X` target overrides the `ALWAYS_EMBED_SWIFT_STANDARD_LIBRARIES` build […]

类“GTMHTTPUploadFetcher”的重复接口定义

我打算在Swift项目中使用Google Drive API 。 我试图通过CocoaPods(v0.39.0)添加Drive SDK。 以下是我的Podfile。 platform :ios, '8.0' use_frameworks! pod 'Google-API-Client/Drive' 我有use_frameworks! 标志的添加,以便CocoaPods可以将Objective-C窗格转换为Swift框架而不是静态库。 Pod安装成功。 但是,当我build立项目,我得到以下错误。 类“GTMHTTPUploadFetcher”的重复接口定义 删除DerivedData文件夹并清理项目不起作用。 我也尝试不添加use_frameworks! 然后通过桥接头的方式添加库。 这没有问题。 事情是所有我的其他依赖与它打开工作。 不幸的是CocoaPods 不 支持只为某些豆荚转换该标志。 有没有解决这个问题的解决方法? 正如谷歌的文档所述 ,谷歌的工程师们应该可以监控google-drive-sdk的问题,所以我希望至less他们能够看到这个问题并尽快解决。

如何禁用/删除FirebaseAnalytics

我从CocoaPod更新“Google / Analytics”并获取FirebaseAnalytics。 之后,每次运行项目时,FirebaseAnalytics都会显示很多错误日志。 目前我不使用这个库,并想删除它。 不幸的是,我找不到任何方法来禁用/删除Pod。 这是Podfileconfiguration target 'myApp' do inhibit_all_warnings! use_frameworks! pod 'Google/Analytics' end 控制台日志: <FIRAnalytics/DEBUG> Debug mode is on <FIRAnalytics/INFO> Firebase Analytics v.3200000 started <FIRAnalytics/INFO> To enable debug logging set the following application argument: -FIRAnalyticsDebugEnabled (see 'https://developer.apple.com/library/ios/recipes/xcode_help-scheme_editor/Articles/SchemeRun.html') <FIRAnalytics/DEBUG> Debug logging enabled <FIRAnalytics/DEBUG> Firebase Analytics is monitoring the network status <FIRAnalytics/DEBUG> Uploading data. Host: […]

用于Cocoapods库的架构armv7的未定义符号

我偶然发现了一个需要处理的项目的问题。 该项目使用Cocoapods来pipe理其库。 我像往常一样运行pod install来开始,但xcode给我错误。 我得到了Undefined symbols for architecture armv7如下图所示: 所有这些符号都是我在项目中使用的库。 例如。 AFNetworking,RNBlurModalView。 我试图从项目中删除所有的Cocoapods相关的文件,并再次运行pod install ,但它仍然没有解决问题。 我到目前为止所做的: 清理项目并重新构build。 删除Cocoapods相关文件并再次运行pod install 。 试图在Project Target中的Compile Sources中添加类,但是不能。 该课程在Pods工作区中。 将“构build主动架构”仅从YES更改为“ NO 我也尝试从同样的问题的解决scheme,但没有一个是为我工作。 如果有帮助,我使用xCode6和Cocoapods 0.34.4 。 项目的有效架构是armv7 and armv7s 。 更新:当运行pod install –verbose Integrating client project Integrating target `Pods` (`AIYOCore.xcodeproj` project) [!] The use of implicit sources has been deprecated. To […]

使用Cocoapods构build静态库时,防止出现重复的符号

虽然我已经看到了许多与Cocoapods和静态库有关的问题,但是他们中的大多数人似乎都认为你最终将拥有一个单独的工作空间与静态库和最终目标应用程序。 在我的情况下,我正在build立一个静态库。 更具体地说,我正在窃听一个MyLib.framework供用户使用。 我真的想用Cocoapodspipe理MyLib.framework的依赖关系,但是当我的库的使用者也使用Cocoapods时,它创造了许多痛点。 例如,我的图书馆有我用Cocoapodspipe理的AFNetworking依赖项。 当我build立我的图书馆,它链接在libPods.a其中包括AFNetworking,以及一些“虚拟”文件/对象。 如果我的框架的用户也使用Cocoapods来构build他们的应用程序,他们会看到如下所示: duplicate symbol _OBJC_METACLASS_$_PodsDummy_Pods in: /Users/erikkerber/Dropbox/Projects/MillMain/MyLib.framework/BuddySDK(Pods-dummy.o) /Users/erikkerber/Library/Developer/Xcode/DerivedData/MillMain-fngfqhlslygksgcfuciznkpqfrbr/Build/Products/Debug-iphonesimulator/libPods.a(Pods-dummy.o) duplicate symbol _OBJC_CLASS_$_PodsDummy_Pods in: /Users/erikkerber/Dropbox/Projects/MillMain/MyLib.framework/BuddySDK(Pods-dummy.o) /Users/erikkerber/Library/Developer/Xcode/DerivedData/MillMain-fngfqhlslygksgcfuciznkpqfrbr/Build/Products/Debug-iphonesimulator/libPods.a(Pods-dummy.o) ld: 2 duplicate symbols for architecture i386 我想如果他们要添加一个AFNetworking依赖关系,他们也会得到与AFNetworking相关的重复符号。 我打算最终分发MyLib与Cocoapods,但我也希望能够分发一个MyLib.framework本身。 有没有办法使Cocoapods与我的图书馆,同时使Cocoapods安全的任何潜在的用户?

将Google Drive API桥接至Swift

从以前删除的post : 我正努力让Google Drive API与Swift一起工作,并希望有人提出build议。 这是我到目前为止:我已经安装了Google Drive API,并在Objective-C中工作… 我试图在Swift中从Google复制这个例子 ,但import GTLDrive在Xcode中返回一个错误: 没有这样的模块GTLDrive。 我无法从Swift类使用GTLServiceDrive 。 我应该使用哪种CocoaPod + 桥接头组合?

Firebase pod安装 – pod“Firebase /数据库” – 要求更高的最低部署目标

我试图安装Firebase文档https://firebase.google.com/docs/ios/setup#available_pods,但是当我尝试我得到问题。 [!] Unable to satisfy the following requirements: Podfile所需的Firebase/Database 发现满足Firebase/Database依赖关系的规范,但是他们需要更高的最低部署目标。 要求更高的最低部署目标 ,我该怎么做? 谢谢 截图

“Pods”目标在安装GCM时具有传递依赖性,包括静态二进制文件

我正在尝试为我的iOS应用程序安装Google Cloud Messaging(使用swift)。 我已经将它添加到我的Podfile中,如下所示: # Uncomment this line to define a global platform for your project # platform :ios, '8.2' use_frameworks! target 'Project' do pod 'Alamofire', '~> 1.2' pod 'Google/CloudMessaging' end target 'ProjectTests' do end 现在,当我尝试安装依赖关系时,出现错误(请参阅下文)。 在我添加GoogleCloudMessaging之前,它运行良好。 我试图做一个新的项目,并添加它,而不是看它是否工作,我得到了同样的错误。 Analyzing dependencies Downloading dependencies Installing Alamofire (1.2.3) Installing GGLInstanceID (1.0.0) Installing Google (1.0.7) Installing GoogleCloudMessaging (1.0.3) Installing […]