我尝试通过CocoaPods集成Fabric / Crashlytics,我的Podfile看起来像这样:
pod 'Fabric/Core', '1.2'
pod 'Fabric/Crashlytics', '1.2'
但是当我尝试构建我的应用程序时,构建失败并且我得到Shell Script Invocation Error
未找到运行脚本:
.../Script-F8D74CB61AB5D7A50013D134.sh: line 2: ./Fabric.framework/run: No such file or directory
是否可以仅使用CocoaPods安装Fabric?
答案 0 :(得分:160)
Fabric现在支持使用CocoaPods进行安装:http://docs.fabric.io/ios/fabric/cocoapods.html
如果您只是在寻找Crashlytics
,可以使用这两个广告连播:
pod 'Fabric'
pod 'Crashlytics'
同时添加以下构建阶段脚本(注意:如果您的repo的路径包含空格,则需要引号):
"${PODS_ROOT}"/Fabric/run <API Key> <Build Secret>
如果您希望使用TwitterKit
,则需要包含:
pod 'TwitterKit'
答案 1 :(得分:10)
通过更改以下行:
修复了我的同样问题./Pods/Fabric/Fabric.framework/run YOUR_API_KEY YOUR_BUILD_SECRET
为:
../Pods/Fabric/Fabric.framework/run YOUR_API_KEY YOUR_BUILD_SECRET
换句话说,只需添加一个额外的&#39;。&#39;指定&#39; Pods&#39; directory是构建目录的兄弟而不是子节点。 YMMV。
答案 2 :(得分:9)
我遇到了同样的问题,请使用指向Pods文件夹的$PODS_ROOT
环境变量;一定要引用它,以防你的路径中有空格;所以而不是
./Pods/Fabric/Fabric.framework/run YOUR_API_KEY YOUR_BUILD_SECRET
使用
"$PODS_ROOT"/Fabric/Fabric.framework/run YOUR_API_KEY YOUR_BUILD_SECRET
答案 3 :(得分:8)
尝试:
删除podfile中的Fabric和Crashlytics。
pod install
再次将Fabric和Crashlytics添加到podfile
pod install
像上面的回答一样添加运行脚本。
希望有所帮助。
答案 4 :(得分:6)
macOS Sierra,Swift 3
变化
${PODS_ROOT}/Fabric/run
到
"${PODS_ROOT}/Fabric/run"
答案 5 :(得分:5)
我必须使用CocoaPods 0.39在Xcode 7中使用不同的路径:
${SRCROOT}/Pods/Fabric/Fabric.framework/run <key> <secret>
podfile:
pod 'Crashlytics'
pod 'Fabric'
我刚刚将Fabric更新为3.4.1,并且该路径^稍微改为Fabric/run
。确保仔细检查${SRCROOT}
之后的位,并将其与Fabric应用程序推荐的内容进行比较。有关详细信息,请参阅the changelog for 3.4.1。
答案 6 :(得分:5)
in
Fabric (1.6.7)
您应该从
更改路径"${PODS_ROOT}/Fabric/Fabric.framework/run" YOUR_API_KEY YOUR_BUILD_SECRET
到
"${PODS_ROOT}/Fabric/run" YOUR_API_KEY YOUR_BUILD_SECRET
答案 7 :(得分:1)
如果您依赖旧版Podspecs的特定内容并且无法更新到官方库,您可以添加
source 'https://github.com/orta/FabricSpecs.git'
source 'https://github.com/CocoaPods/Specs.git'
在Pod文件的顶部,它将在新的版本之前查找旧的-unofficial-版本。有关详细信息,请参阅FabricSpecs回购。
答案 8 :(得分:1)
对于我的项目,这有效:
"${PODS_ROOT}/Fabric/Fabric.framework/run" YOUR_API_KEY YOUR_BUILD_SECRET
答案 9 :(得分:1)
如果您更新为Fabric
&amp;来自旧版本的Crashlytics
:
info.plist
文件中的密钥Fabric
中包含任何数据,请务必删除所有该信息以及密钥。"${PODS_ROOT}/Fabric/run"
脚本。不要添加任何API_KEY和BUILD_SECRET 这对我有用,希望这有帮助。
答案 10 :(得分:0)
通常我建议不要反对谷物并使用Fabric App进行安装。鉴于它们提供的复杂性,它提供了我见过的最简单的集成工具。
话虽如此,既然你已经开始使用Cocoapods了,那么唯一能让事情发展的方法就是以下
答案 11 :(得分:0)
我之前遇到过这个问题。 这是我的解决方案。 在运行脚本之前自动添加运行文件的执行模式。
在Build Phase -> Run Script
添加以下行:
chmod +x ./Pods/CrashlyticsFramework/Crashlytics.framework/run
./Pods/CrashlyticsFramework/Crashlytics.framework/run YOUR_API_KEY YOUR_BUILD_SECRET
答案 12 :(得分:0)
删除podfile.lock和manifest.lock,然后重新运行podfile安装,然后使用Fabric中的“easy”配置应用程序从那里继续。
在Fabric.io的网站上有一些非常漂亮的屏幕截图幻灯片演示。我在谷歌找到了它们 - 看不到网站可以访问它们的位置。
仅供参考,如果您遇到问题,那不是您:)。基本上(截至8月3日),Fabric板载过程的每一步都可能被破坏。
希望这些都能尽快解决。
警告:您通过搜索找到的大部分答案都将过时,因为很明显,fabric.io在7月15日发生了很大变化,但如果您向下滚动堆栈/ o上找到的任何内容,您可能会找到更新的答案
答案 13 :(得分:0)
确保卸载pod'Answers','〜&gt;如果您之前在项目中使用Fabric,则从您的pod中获取1.3'。
答案 14 :(得分:0)
如官方文档中所述,只需更新您的Pod存储库
pod repo update