-
반응형
왠일인지 출시한 앱의 크래시는 수집되는데 dSYM 파일이 전송이 안되었다. 흑흑 분석 들어갑니다.
⚠️ 이유
내가 테스트 했을 때는 아직 앱이 출시 되기 전이라 Release Scheme으로 iPhone에 빌드해서 강제로 크래시를 냈었다. 이 방법을 쓰면 build setting 에 EnableBitcode == true 여도 실제로는 Bitcode를 생성하지 않기 때문에 Crashlytics 에서 dSYM을 자동으로 가져간다.
그렇지만 AppStore에 올리거나 Firebase Distribution에 업로드 하는 경우 Archive 하게 되는 것이고 이때는 Bitcode를 생성, Crashlytics가 dSYM 파일을 찾지 못하게 된다.
Unfortunately, there are a few cases that could cause your dSYM upload to fail, such as bitcode in your app or other unique project configurations. This guide provides some ways to troubleshoot when Crashlytics can't locate your app's dSYM.
출처: firebase.google.com/docs/crashlytics/get-deobfuscated-reports?platform=ios아니 이제 Bitcode enable이 디폴트인데 a few cases 라니 .. 거의 100프로 아님니까
Bitcode : stackoverflow.com/questions/31088618/impact-of-xcode-build-options-enable-bitcode-yes-no
💣 땜빵으로 해결
이미 출시된 버전이라면 아래 가이드라인을 따라 AppStore 에서 dSYM을 다운받자
- Log in to App Store Connect, then click My Apps > Activity.
- Select the build you want to download a dSYM for.
- Click Build Details > Download dSYM.
앱 > 테스트 플라이트 > 버전 빌드넘버 클릭 > 빌드 메타정보
그다음 Firebase upload-symbols 명령어를 이용해서 Crashlytics에 업로드 한다. (그냥 드래그앤드롭 하게 해주지 ...)
명령어는 다음과 같다.
$ Pods/FirebaseCrashlytics/upload-symbols -gsp 경로/GoogleService-Info.plist -p ios 다운받은경로/appDsyms
내 컴터 해서 했을 때는 이런 느낌이니 참고
$ Pods/FirebaseCrashlytics/upload-symbols -gsp /Users/jooeungen/myProject/Resources/GoogleService-Info.plist -p ios /Users/jooeungen/Downloads/appDsyms
요런식으로 뜨면 잘 된것입니다. 👏
🔨제대로 수정
스크립트 짜서 마지막에 crashlytics 에 dSYM 보내도록 해야하는데, 이건 다음시간에 알아보자.
반응형'개발' 카테고리의 다른 글
[iOS/Swift] Universal link 적용하기 (2) 2021.04.24 Fastlane 을 사용해서 Firebase Distribution 배포하기 (0) 2021.04.17 [iOS/Swift] Multiselection 되는 Photo picker Library 선택하기 (0) 2021.04.07 [Swift] AppStore 리뷰 팝업 추가하기 (3) 2021.03.04 SSH 인증키 생성 & Github 에 등록 (0) 2021.02.27 댓글