简体   繁体   中英

How to disable LLVM Code Coverage in Fabric Crashlytics

On submitting an iOS app to the Apple App Store recently, I'm receiving the following error during processing of the build:

Invalid Bundle - Disallowed LLVM instrumentation. Do not submit apps with LLVM profiling instrumentation or coverage collection enabled. Turn off LLVM profiling or code coverage, rebuild your app and resubmit the app.

Searching Stack Overflow, the solution is to disable LLVM Code Coverage in all dependencies. I have done this for all open source Carthage dependencies, but I'm still getting the error message. I believe this is because the Fabric and Crashlytics dependencies in the project have LLVM Code Coverage enabled, but I cannot disable this as I only have access to the .framework files, and not the .xcodeproj files.

How can I change the LLVM Code Coverage build setting for Fabric / Crashlytics?

In our case Fabric frameworks were not the cause of the mentioned error.

Apple suggest to run the following scripts on your archive (output of Xcode archive operation):

nm -m -arch all <PathToArchive>/Products/Applications/<AppName>.app/<AppBinary> | grep gcov

otool -l -arch all <PathToArchive>/Products/Applications/<AppName>.app/<AppBinary> | grep __llvm_prf

But you can modify the path to target 'Frameworks' directory instead of the app binary and it will print out the frameworks with enabled instrumentation.

More info is available at Resolving App Rejections for GCC and LLVM Instrumentation .

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.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM