공부방/Android

안드로이드 스튜디오 OS 8 이상 앱 디버그 빌드 실행시 죽는 현상

soycrab 2018. 7. 25. 16:44

안드로이드 스튜디오에서 OS 8 이상의 폰을 디버그 모드로 빌드하면, 정삭적으로 빌드가 되었는데도 


앱을 실행하면 죽는 현상이 있습니다. 


이를 해결하기 위해 보통 Android Studio 의 Preferences 에서 


Instance Run 을 해제를 해 주는데, 이렇게 기능을 풀어버리면, 


빌드가 굉장히 느려질뿐만 아니라 디버깅도 불가능 합니다. 


따라서 조금더 나은 해결 방법으로 프로가드에 룰을 추가해 줄수 있습니다.




프로그램이 죽었을때 Logcat 을 보면 아래 문구로 시작하는 게 대부분인데 , 


java.lang.NoSuchMethodError:  "com.google.firebase.provider.FirebaseInitProvider"


이런경우 proguard-rules.pro 를 열어주고 


아래와 같이 해당 패지키 명을 추가 입력해 주면 됩니다


-keep class com.google.firebase.provider.FirebaseInitProvider


하나를 추가하고 나면 다른곳에서 계속해서 발생을하는데,


그때마다  proguard-rules  에 해당 패키지명을 추가해 주시면 됩니다. 


해당 방식은 디버깅을 위해 처리하는 임시 방편적 작업으로 릴리즈 시에는 보안을 위해 


풀어주시면 됩니다. 



반응형