We're using react-native and have a fastfile set up to build and deploy iOS and Android betas. If we build-and-deploy the iOS beta, all is fine. If we build-and-deploy the Android beta, all is fine.
But if we try and do both with the same fastlane execution, the Android call to crashlytics
fails with the following error: "Crashlytics has moved the submit binary outside of Crashlytics.framework directory as of 3.4.1. Please change :crashlytics_path to <PODS_ROOT>/Crashlytics/submit
"
Solution: add the following line before calling crashlytics
for the Android build.
lane_context[SharedValues::IPA_OUTPUT_PATH] = nil
Reasoning: when the iOS build is done with gym
, it sets this IPA_OUTPUT_PATH value. When crashlytics_helper is determining which submit
binary to use, it checks to see if ipa_path is set -- if so, it assumes we're dealing with an iOS build, and tries to use the iOS submit
. SO! Setting this IPA_OUTPUT_PATH to nil means crashlytics_helper doesn't see this as necessarily an iOS build, and we get the proper submit
binary used.
Note that another workaround was to simply change the order and do the Android build-and-deploy first, THEN the iOS one.
The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.