![](/img/trans.png)
[英]iOS cocoapods upgrade from Fabric Crashlytics to Firebase Crashlytics
[英]Integrate Fabric/Crashlytics via CocoaPods
我嘗試通過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?
Fabric現在支持使用CocoaPods進行安裝: http ://docs.fabric.io/ios/fabric/cocoapods.html
如果您只是在尋找Crashlytics
您可以使用這兩個pod:
pod 'Fabric'
pod 'Crashlytics'
除了添加以下構建階段腳本(注意:如果您的repo的路徑包含空格,您將需要引號):
"${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'目錄是兄弟而不是構建目錄的子節點。 因人而異。
我有同樣的問題,使用$PODS_ROOT
環境變量指向你的Pods文件夾; 一定要引用它,以防你的路徑中有空格; 而不是
./Pods/Fabric/Fabric.framework/run YOUR_API_KEY YOUR_BUILD_SECRET
使用
"$PODS_ROOT"/Fabric/Fabric.framework/run YOUR_API_KEY YOUR_BUILD_SECRET
嘗試:
在podfile中刪除Fabric和Crashlytics。
pod安裝
再次將Fabric和Crashlytics添加到podfile
pod安裝
像上面的回答一樣添加Run腳本。
希望它有所幫助。
macOS Sierra,Swift 3
更改
${PODS_ROOT}/Fabric/run
至
"${PODS_ROOT}/Fabric/run"
我不得不使用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應用程序推薦的內容進行比較。 有關詳細信息,請參閱3.4.1的更改日志 。
在
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
使用Cocoapods時,在構建階段執行的腳本路徑會有所不同。 https://github.com/bpoplauschi/CrashlyticsFramework上的github頁面建議使用./Pods/CrashlyticsFramework/Crashlytics.framework/run
但是,我發現我必須使用./Pods/Fabric/Fabric.framework/run
安裝。 無論如何,你必須挖掘Pods目錄才能找到你想要的東西。
如果您依賴於舊版Podspecs的特定內容並且無法更新到官方庫,則可以添加
source 'https://github.com/orta/FabricSpecs.git'
source 'https://github.com/CocoaPods/Specs.git'
在Podfile的頂部,它將在新的版本之前查找舊的-unofficial-版本。 有關更多詳細信息,請參閱FabricSpecs倉庫 。
對於我的項目,這工作:
"${PODS_ROOT}/Fabric/Fabric.framework/run" YOUR_API_KEY YOUR_BUILD_SECRET
如果您從舊版本更新到Fabric
& Crashlytics
:
info.plist
文件中有關鍵Fabric
任何數據,請確保刪除所有該信息以及密鑰。 "${PODS_ROOT}/Fabric/run"
腳本。 不要添加任何API_KEY和BUILD_SECRET 這對我有用,希望這會有所幫助。
通常我會建議不要反對谷物並使用Fabric App進行安裝。 鑒於它們提供的復雜性,它是我見過的最簡單的集成工具。
話雖這么說,既然你已經開始使用Cocoapods了,那么唯一的方法就是如下
我以前遇到過這個問題。 這是我的解決方案。 在運行腳本之前自動添加運行文件的執行模式。
在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安裝,然后使用Fabric中的“easy”配置應用程序從那里繼續。
在Fabric.io的網站上有一些非常漂亮的屏幕截圖幻燈片演示。 我在谷歌找到了它們 - 看不到它們可從網站訪問的位置。
僅供參考,如果您遇到問題,那不是您:)。 基本上(截至8月3日),Fabric板載過程的每一步都可能被破壞。
希望這些都能很快得到修復。
警告:您通過搜索找到的大部分答案都將過時,因為很明顯,fabric.io在7月15日發生了很大變化,但是如果您向下滾動堆棧/ o上找到的任何內容,您可能會找到更新的答案。
如果您之前在項目中使用Fabric,請確保從您的pod中卸載pod'Answers','〜> 1.3'。
正如官方文檔中所述,只需更新您的pods repo
pod repo update
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.