我正在为我的iOS应用安装Crashlytics。我通过他们的站点链接下载了它,并完成了集成框架,添加运行脚本等所有步骤。
我遇到了一个问题,所以我删除了框架并决定重新开始尝试重新安装。但Fabric应用程序更新到更新版本,现在当我尝试将Crashlytics重新安装到我的应用程序时,它不会让我选择重新安装框架。它直接点击“安装”到“构建你的项目”屏幕,我无法通过。
要帮助配置项目,请按⌘B
立即构建项目
我按⌘B,它构建并没有任何反应。我认为问题是因为我从我的项目中删除了Crashlytics和Fabric框架,但我看不到再次添加它们的方法。 Fabric应用程序没有给我这个选项。
答案 0 :(得分:156)
进入目标的构建设置。 找到“调试信息格式”。 在调试和发行版中都将其从“ DWARF”设置为“带有dSYM文件的DWARF”
答案 1 :(得分:69)
从评论转到答案。
Mike来自Fabric。如果您通过Mac应用程序备份,然后单击左上角的箭头,单击" + New App",它将引导您重新添加所有内容。
答案 2 :(得分:24)
如果您检查资源导航器,则可能会看到以下消息:
“对于所有配置,DEBUG_INFORMATION_FORMAT应该设置为dwarf-with-dsym。这也可能是时间问题,请确保Fabric运行脚本构建阶段是最后一个构建阶段,并且没有其他脚本将dSYM从该位置移出Xcode生成了它。无法在路径“
处处理eCreditWebWrapper.app.dSYM转到“构建设置”,然后搜索“调试信息格式”。确保将“调试”设置为“带有dSYM文件的DWARF”。
没有dSYM文件,Fabric将无法工作。
答案 3 :(得分:5)
我通过以下方式解决了这个问题。根据上面的建议,我开始为crashlytics添加一个新的应用程序。当我到达添加新的"运行脚本"构建阶段,我只是将该文本复制并粘贴到上一个文本(使用Crashlytics创建)。 我还取消选中"仅在安装"。
时运行脚本在此之后,我取消了添加新的应用程序并返回UPGRADE。此时,构建应用程序,可以将您带到下一步,您不会再被卡在屏幕上。
答案 4 :(得分:4)
我也被困在Build阶段。
我也取消选中"Run script only when installing"
并再次按下命令+ B然后我转到下一步。
答案 5 :(得分:4)
如果脚本没有运行,您可能只在安装"时检查了"运行脚本。在运行脚本部分。 我希望它有所帮助
答案 6 :(得分:2)
您必须检查您的部署目标版本,因为" Fabric的最低iOS版本是6.0"
答案 7 :(得分:2)
对于Xcode 10.2.1,通过Fabric Mac应用程序的自动安装将不再起作用。 无法通过“新应用分步指南”添加新应用。
您必须遵循manual installation instructions。下载2个框架并将其添加到Xcode工作区中,然后添加“运行构建脚本”阶段(以及相关的Fabric代码),然后构建App。最后(非常重要),在实际设备上运行应用。
一旦成功启动该应用程序,新的应用程序信息将在Fabric仪表板以及Fabric Mac App中可用(需要重新启动该应用程序以查看新应用程序)。
以下是步骤:
Input Files
import
和初始化代码Info.plist
中添加Fabric API密钥Crashlytics
。如果没有日志显示,请检查您的活动方案是否包含OS_ACTIVITY_MODE
设置。如果当前设置为default
,请将其设置为disabled
。答案 8 :(得分:2)
TL; DR
点击方案->编辑方案->将构建配置设置为“发布”
说明:
The most voted answer听起来不错,但是在某些情况下,您只是不需要在调试版本中使用crashlytics(谁想要在您开发和试验代码时发送崩溃信息?)。在这种情况下,您应该通过检查调试编译标志(超出此问题的范围)来禁用crashlytics,并且在安装过程中首次构建build app进行发布,以使crashlytics知道您已构建app。
答案 9 :(得分:2)
在将构建目标设置为“通用iOS设备”并从“产品”>“存档”菜单中创建存档之后,我只能使Fabric应用程序继续安装过程。
仅构建应用程序或在模拟器上运行它似乎不会触发Fabric应用程序继续运行。
答案 10 :(得分:2)
我今天遇到了同样的问题。问题是我没有运行脚本:
./Fabric.framework/run <api key>
在我的项目中。一旦我把它放回去,那一切都完美无缺。我还清理了我的项目并删除了派生数据,以确保。
答案 11 :(得分:1)
在运行脚本构建阶段,有一个电话:
./Crashlytics.framework/run <your_api_key_here>
也许您添加了一些条件来仅在某些构建中触发它:
releaseConfig="Release"
if [ "$releaseConfig" = "${CONFIGURATION}" ]; then
echo "Running Crashlytics"
./Crashlytics.framework/run <your_api_key_here>
fi
这样它就不会在⌘B
上触发答案 12 :(得分:1)
如果您使用 Xcode 10 。
Project Navigator->您的项目-> Targets-> Build Phases->您的Fabric运行脚本->输入文件->“ +”(添加输入文件)->清除字段并超过此行:
$(BUILT_PRODUCTS_DIR)/$(INFOPLIST_PATH)
请确保删除以下内容:$(SRCROOT)/
答案 13 :(得分:1)
在我的情况下,我正确地遵循了所有步骤,但仍然坚持“添加构建阶段&#39;步。 然后我刚重新启动结构,一切正常
还有一些其他可能的行动:
1)只需重新启动Fabric,Xcode和Mac即可。 2)如果你使用Cocoapods改变构建阶段线
./Crashlytics.framework/run [yourAPIKey]
到
"${PODS_ROOT}/Fabric/run" [yourAPIKey]
3)构建项目后,如果Fabric停止响应,只需等待一段时间。我的Mac上花了大约一分钟。
答案 14 :(得分:0)
谢谢,我通过删除文件夹来解决问题:
~ / Library / Caches / com.crashlytics.data
~ / Library / Caches / com.crashlytics.mac
答案 15 :(得分:0)
我做错了是将脚本添加到 pods项目构建阶段而不是主项目构建阶段,将其添加到主项目构建阶段解决了问题
答案 16 :(得分:0)
这里没有一个解决方案适合我。我的方案是其他人将Fabric框架添加到我们的项目并将其提交给repo。他们的计算机上的运行脚本启动/触发了Fabric插件,但是我没有启动/触发,尽管它没有报告错误。
解决方案是创建一个单独的项目,使用Cocoapods下载相同版本的Fabric,用Cocoapods下载的版本替换我们的project / repo中的运行脚本(以及目标运行脚本中引用的脚本)。重建然后插件会响应。
比较两个运行脚本文件,它们完全不同,但Cocoapods的运行脚本不是平面文本文件,而且不可读。所以我不确定脚本之间有什么不同,但是在使用相同版本的Fabric时我们以某种方式得到了不同版本的脚本。
答案 17 :(得分:0)
如果要复制目标,请从构建阶段删除运行脚本,然后再次添加以解决问题。
答案 18 :(得分:0)
如果您有多个目标,
在构建项目之前,请检查对模式的选择是否正确。
答案 19 :(得分:0)
请交叉验证您添加的运行脚本是否为您的实际目标,如果您将添加到测试目标,则在将其添加到实际目标之前不会继续
答案 20 :(得分:0)
对于Xcode10。将您应用的构建Info.plist位置添加到“构建阶段”的“输入文件”字段中:
$(BUILT_PRODUCTS_DIR)/ $(INFOPLIST_PATH)
这解决了我的问题,我希望这可以解决其他问题。
答案 21 :(得分:0)
原来,我没有足够的权限在Fabric中创建新项目。
从Member
升级到Admin
解决了该问题。
答案 22 :(得分:0)
就我而言,从帮助中删除一个应用。 1)从Fabric中删除该应用程序。 2)再次按照所有步骤添加应用程序并安装Crashlytics。
答案 23 :(得分:0)
没有任何帮助。现在,Fabric捕获了我的存档创建。但是我是通过fastlane的build_app
创建档案的。
答案 24 :(得分:0)
在更高版本的Xcode 中打开项目。浪费了几个小时,这解决了我的问题。
我的项目在Xcode 10.2上构建,并且我在Xcode 10.1上运行,但是当我在Xocode 11上运行相同的项目时。构建成功。
答案 25 :(得分:-1)
转到文件夹.Where(<some condition>)
并删除所有 /Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/<CURRENT_IOS_SDK>/usr/lib/
个文件。
它对我有用。