Mike z Fabric tutaj.
Użycie Bitcode z pewnością sprawi, że problem będzie występował częściej, ale jest kilka sposobów na jego obsługę. Możesz automatycznie pobrać dSYM przy użyciu Fastlane.tools, uruchamiając fastlane refresh_dsyms
, który pobierze dSYM z iTunesConnect, a następnie prześle je do Fabric. Wniosek o Fastlane za refresh_dsyms
jest tutaj: https://krausefx.com/blog/download-dsym-symbolication-files-from-itunes-connect-for-bitcode-ios-apps
W praktyce stworzyć Fastlane nazwie: refresh_dsyms
, z następujących powodów:
lane :refresh_dsyms do
download_dsyms # Download dSYM files from iTC
upload_symbols_to_crashlytics # Upload them to Crashlytics
clean_build_artifacts # Delete the local dSYM files
end
Które pobrać dSYMs z iTunesConnect i przesłać je do tkaniny.
Alternatywnie możesz uruchomić skrypt Fabric upload_symbols
, ale musisz ręcznie pobrać dSYM z iTunesConnect - to będzie obsługiwać tylko przesyłanie. Komenda byłoby: find <directory-to-search-for-dsyms> -name "*.dSYM" | xargs -I \{\} /path/to/upload-symbols -a <api-key> -p <platform> \{\}
Odesłanie upload_symbols jest tutaj: https://docs.fabric.io/ios/crashlytics/missing-dsyms.html#upload-symbols-script i
Z powodów, dlaczego tak się dzieje, Apple rekompilacji aplikacji gdy Bitcode jest włączona, więc dSYM jest generowany tylko na serwerach Apple, które uniemożliwia Fabricowi automatyczne przesyłanie ich.
Po prostu wyłączenie bitcode rozwiąże ten problem bez kłopotów? – Esqarrouth
To prawie tyle, co znaleźliśmy. Jest kilka przypadków skrajnych, ale Apple rekompiluje twoją aplikację na swoich serwerach, tworząc nowe dSYMy, więc nie ma sposobu, abyśmy uchwycili te dSYM-y. –