通过CocoaPods集成Fabric / Crashlytics

我尝试通过CocoaPods集成Fabric / Crashlytics,我的Podfile看起来像这样:

pod 'Fabric/Core', '1.2' pod 'Fabric/Crashlytics', '1.2' 

但是,当我尝试构build我的应用程序时,生成失败,我得到一个Shell Script Invocation Error的运行脚本找不到:

 .../Script-F8D74CB61AB5D7A50013D134.sh: line 2: ./Fabric.framework/run: No such file or directory 

是否可以只使用CocoaPods安装Fabric?

Fabric现在支持使用CocoaPods进行安装: http ://docs.fabric.io/ios/fabric/cocoapods.html

如果你只是在寻找Crashlytics你可以使用这两个豆荚:

 pod 'Fabric' pod 'Crashlytics' 

除了添加下面的构build阶段脚本(注意:如果您的仓库的path包含空格,您将需要引号):

 "${PODS_ROOT}"/Fabric/run <API Key> <Build Secret> 

运行脚本构建阶段

如果你正在寻找使用TwitterKit你将需要包括:

 pod 'TwitterKit' 

同样的问题对我来说是通过改变行从:

 ./Pods/Fabric/Fabric.framework/run YOUR_API_KEY YOUR_BUILD_SECRET 

至:

 ../Pods/Fabric/Fabric.framework/run YOUR_API_KEY YOUR_BUILD_SECRET 

换句话说,只需要添加一个额外的'。' 指定“Pods”目录是构build目录的同级而不是子级。 因人而异。

我有同样的问题,使用指向您的Pods文件夹的$PODS_ROOT环境variables; 如果你的路上有空位,一定要引用它; 所以而不是

./Pods/Fabric/Fabric.framework/run YOUR_API_KEY YOUR_BUILD_SECRET

使用

"$PODS_ROOT"/Fabric/Fabric.framework/run YOUR_API_KEY YOUR_BUILD_SECRET

尝试:

  1. 删除pod文件中的Fabric和Crashlytics。

  2. 荚安装

  3. 再次将Fabric和Crashlytics添加到pod文件

  4. 荚安装

  5. 像上面的答案添加运行脚本。

希望它有帮助。

我必须使用CocoaPods 0.39在Xcode 7中使用不同的path:

 ${SRCROOT}/Pods/Fabric/Fabric.framework/run <key> <secret> 

podfile:

 pod 'Crashlytics' pod 'Fabric' 

我也刚更新了Fabric到3.4.1,并且这个path稍微改变了Fabric/run 。 请确保仔细检查${SRCROOT}后的位,并将其与Fabric应用程序推荐的内容进行比较。 有关详细信息,请参阅3.4.1的更新日志 。

macOS Sierra,Swift 3

更改

 ${PODS_ROOT}/Fabric/run 

 "${PODS_ROOT}/Fabric/run" 

在使用Cocoapods时,在构build阶段执行的脚本path是不同的。 https://github.com/bpoplauschi/CrashlyticsFramework上的github页面build议使用;./Pods/CrashlyticsFramework/Crashlytics.framework/run然而,我发现我必须使用./Pods/Fabric/Fabric.framework/run为我的安装。 无论如何,你将不得不挖掘Pods目录来find你要找的东西。

 Fabric (1.6.7) 

你应该改变path

 "${PODS_ROOT}/Fabric/Fabric.framework/run" YOUR_API_KEY YOUR_BUILD_SECRET 

 "${PODS_ROOT}/Fabric/run" YOUR_API_KEY YOUR_BUILD_SECRET 

如果您依赖于旧Podspecs特定的内容,并且无法更新到官方库,则可以添加

 source 'https://github.com/orta/FabricSpecs.git' source 'https://github.com/CocoaPods/Specs.git' 

在你的Podfile的顶部,它会在新的之前寻找旧的 – 非官方版本。 有关更多详细信息,请参阅FabricSpecs回购。

对于我的项目,这工作:

 "${PODS_ROOT}/Fabric/Fabric.framework/run" YOUR_API_KEY YOUR_BUILD_SECRET 

通常我会build议不要反对谷物和使用Fabric App进行安装。 由于他们所提供的复杂性,它的手下来了我见过的最简单的集成工具。

这就是说,既然你已经死了使用Cocoapods,唯一的办法就是下面的事情

  1. 运行Crashlytics应用程序安装程序到它们为您提供构build阶段脚本的位置。
  2. 复制脚本
  3. 撤消安装
  4. 通过Cocoapods安装
  5. 将复制的脚本添加到您的buildphase

我以前遇到过这个问题。 这是我的解决scheme。 在运行脚本之前自动添加运行文件的执行模式。

Build Phase -> Run Script添加以下行:

 chmod +x ./Pods/CrashlyticsFramework/Crashlytics.framework/run ./Pods/CrashlyticsFramework/Crashlytics.framework/run YOUR_API_KEY YOUR_BUILD_SECRET 

删除podfile.lock和manifest.lock,然后重新运行podfile install,然后使用Fabric中的“easy”configuration应用程序从那里继续。

在Fabric.io网站上有一些非常漂亮的屏幕截图幻灯片演示。 我发现他们与谷歌 – 没有看到他们可以从网站访问。

仅供参考,如果你有问题,那不是你:)。 基本上(截至8月3日),织物船上过程的每一步都可能被破坏。

  • 如果你幸运的话,你可能没有问题。
  • 如果你不是,你可能在每一步都有问题要解决,包括注册可以让你进入无限注册循环的服务,等等。

希望这些都能很快得到解决。

警告:通过searchfind的大部分答案都是过时的,因为7月15日显然fabric.io发生了很大的变化,但是如果你在stack / o上find任何东西,你可能会find一个更新的答案。