- android - RelativeLayout 背景可绘制重叠内容
- android - 如何链接 cpufeatures lib 以获取 native android 库?
- java - OnItemClickListener 不起作用,但 OnLongItemClickListener 在自定义 ListView 中起作用
- java - Android 文件转字符串
我在 Xcode 8 中的项目设置似乎有问题。问题如下:
添加新的 Pod
时 - 比方说,Pod Firebase
- 安装有效,并将必要的文件添加到我的项目中。然后我可以执行 @Import Firebase
到目前为止,一切都很好。但是,一旦我引用了 Firebase
API 示例:[FirApp configure];
- 一切仍然正常 - Xcode 上的自动完成功能按预期工作并且没有问题。但是,在构建时我会遇到一个编译时问题,其中指出:
Undefined symbols for architecture arm64: "_OBJC_CLASS_$_FIRAppIndexing", referenced from: objc-class-ref in AppDelegate.o ld: symbol(s) not found for architecture arm64 clang: error: linker command failed with exit code 1 (use -v to see invocation)
我能够解决这个问题的唯一方法是在我的项目中手动添加 _FIRAppIndexing.framework
,Build settings,在 Link Libraries with Libraries
下
为此,我只需将框架工作从项目导航器拖放到链接库下的正确部分。
这有时有效;与 Firebase SDK 的其他部分一样,我遇到了运行时崩溃。
因此,为了找到根本原因,我创建了一个全新的测试项目,使用 Pod install
安装了 Pod - 但是我不必添加 framework
手动到图书馆 - 它实际上什至没有在那里列出。
测试项目中的一切在编译和运行时都运行良好。
这让我相信是我的项目设置中的某些东西导致了这种情况。
我尝试过的事情
pod deintegrate
完全删除了 cocoapods 并删除了所有它的其他痕迹。然后做了一个干净的构建。然后Pod install
播客文件
# Uncomment the next line to define a global platform for your project
# platform :ios, '9.0'
target 'MyApp' do
# Uncomment the next line if you're using Swift or would like to use dynamic frameworks
use_frameworks!
# Pods for MyApp
pod 'Crashlytics'
pod 'AsyncDisplayKit', '>= 2.0'
pod 'Firebase'
pod 'Firebase/Messaging'
pod 'FBSDKCoreKit'
pod "HockeySDK", :subspecs => ['AllFeaturesLib']
pod 'Fabric'
pod 'FirebaseAppIndexing'
pod 'AFNetworking', '~> 3.0'
pod '1PasswordExtension', '~> 1.8.4'
target 'MyAppTests' do
inherit! :search_paths
# Pods for testing
end
end
GitHub 示例项目
https://github.com/TanderZA/MyApp
我复制了我当前的项目 - 并删除了所有文件。问题依然存在。您将看到该项目由于链接器错误而无法编译,并引用了 Firebase AP。通过手动将框架添加到 Link Libraries with Libraries,您将看到它应该可以编译。但这不是它应该如何工作的。当前项目有一个我没有解决的 infoPlist.strings 问题。但该项目处于演示该问题的状态。
最佳答案
我检查了项目,看来你搞砸了计划。
正确创建一个新方案,然后再次安装 pod,因为项目是 Obj-C,所以您不需要在 podfile 中启用框架。
所以评论像 # use_frameworks!
同时使用 pod update
更新 pod
然后选择新方案并在其中构建项目。
如果您做不到,请告诉我。
关于ios - Cocoapods项目设置问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42513899/
有没有办法在 CocoaPod 文件中写入注释?我看了他们的CocoaPods Guide ,但我什么也没看到。 最佳答案 您可以使用 Ruby 注释语法在 Podfile 中添加注释: 内联 #co
我在 Xcode 项目中有多个目标,它们必须依赖于相同的 pod 列表。我可以这样写 Podfile: target :target1 do pod 'pod1' pod 'pod2'
我正在创建一个新的 cocoapod,并希望包含另一个 cocoapod 作为依赖项。 我在 podspec 中添加了必要的行: s.dependency 'Locksmith', '~> 2.0
我执行了我的正常 pod update并收到以下消息: [!] There was an error reading '~/.cocoapods/repos/master/CocoaPods-vers
背景 几年前,我为我正在从事的项目安装了 cocoapods。从那以后我就没有使用过它,现在我需要更新它才能让 Flutter 工作。 系统 操作系统 MacOS Mojave 版本 10.14.3
我想知道用 CocoaPod 包含演示项目的最佳方法是什么。特别是,我希望它成为任何人都可以尝试使用 pod try 的组件。命令。 我看到两个选项: 选项 1:使用 Podfile 在 Exampl
我正在尝试为 firebase 获取一个 pod,但是我在搜索框中输入的任何名称都没有返回任何内容。是网站打不开还是?谢谢 最佳答案 这似乎是许多开发人员不时面临的问题,包括我自己,但是 cocoap
我有一个库的公共(public)分支,该库已存在于 CocoaPods/Specs 中。在 Podfile 中,我可以通过执行以下操作来引用此 fork pod: pod 'CoolLibrary',
pod 命令是否支持列出给定项目中已安装的 CococaPods 的选项? pod list 似乎显示了所有已发布 pod 的列表。我查看了文档,但找不到执行此操作的方法。 最佳答案 如 @DougA
我在 Amazon s3 中存储了一个预编译的框架。 “pod spec lint”失败并出现以下错误。 - ERROR | [iOS] file patterns: The `source_file
我正在用一些资源文件创建我自己的 pod。它基本上是这样定义的: Pod::Spec.new do |s| s.name = 'MyName' s.version = '0.
我正在尝试在我的项目中使用编译到 iOS 的 libFLAC,并使用 CocoaPod 作为依赖项进行安装。 问题是,如果我使用 CocoaPod 0.39 版,工作区创建得很好,但如果我使用 Coc
我在使 CocoaPods 依赖项在 RubyMotion 中工作时遇到了各种问题。首先,如果我添加 dependency 'JSONKit'到我的 Rakefile 然后运行 rake它被 ca
当使用 faSTLane 和 cocoapods 构建我们的 iOS 应用程序时,我注意到 faSTLane 不使用我使用安装的 cocoapods 版本 sudo gem install cocoa
有没有办法在 Podfile 中指定那个 xcconfig文件应该是 #include d 在 Cocoapods 生成的那个? 是否有公开的方法/变量用于附加此 #include还是我需要阅读生成的
在新的 XCode5 中构建我的项目时,我收到以下警告: Pods-App 作为“libPods-App.a”的隐式依赖项被拒绝,因为其架构“i386”不包含所有必需的架构“x86_64” . 最佳答
我已经使用以下命令在 bundle 中安装了 Cocoapods-art: bundle exec gem install cocoapods-art 这是成功消息: Fetching cocoap
在 Xcode 7 中,cocoapods 库的库具有排除代码覆盖率的功能。 但在 Xcode 8 中,该库将包含代码覆盖率。 我是否可以在代码覆盖率中排除该库? 示例:安装 pod 'TPKeybo
我目前正在寻找一个仅支持 Carthage 作为包管理器的库。我希望将其集成的项目已经有一些 CocoaPods 依赖项。有人尝试过同时使用这两个管理器吗? 我觉得这是一个坏主意,但我很想听听实际情况
我刚刚在 Specs Repo 中使用 Pod trunk Push 发布了 Pod 的 Beta 版本。我想知道是否有任何方法可以从规范存储库中删除此版本规范。我没有找到任何通过 pod 命令执行此
我是一名优秀的程序员,十分优秀!