🎈 문제
외주를 맡겼던 소스에 위와 같이 string값을 찾을 수 없다는 빨간색 에러가 떴다. 그런데 막상 앱을 실행시키면 별다른 오류없이 잘 실행된다.
🎈 분석
우선 해당 데이터가 어디에 있는지 확인하기 위해 import한 R의 위치
가 어디인지 확인해보았다. 그리고 해당 패키지에 있는 res - values - strings.xml
을 확인해보았지만 위 데이터는 찾아볼 수 없었다.
🎈 해결
이러한 이유는 외주를 맡겼던 패키지에서 존재했던 default_web_client_id값이기 때문에, 현재 앱 내에서의 어느 패키지의 values - strings.xml 위치에도 해당 데이터가 전혀 존재하지 않지만 바이너리 파일 형식으로 어딘가에 남아있기 때문에 앱은 문제없이 잘 실행되는 것이다.
실제로 해당 앱의 lib폴더
를 들어가면 .arr 형식의 여러 파일들이 존재하는데, 이중 하나가 에러가 뜬 클래스가 상속하는 라이브러리에 대한 바이너리 파일이다. 따라서 추측하건데 .arr 형식의 외주업체의 라이브러리 파일에 위 데이터가 바이너리 형태로 들어가있지 않을까 생각한다.
[참고] ARR 파일
Android 라이브러리 프로젝트의 바이너리 배포판. Java 클래스 파일과 리소스가 합쳐진 형태.
REFERENCE
'📜 TIL' 카테고리의 다른 글
[Android] Network (0) | 2022.10.25 |
---|---|
동기처리 비동기 처리에 대해 매우 쉽고 간단히 정리! (0) | 2022.10.21 |
[Android] Kotlin 파일은 Java파일의 Lombok 라이브러리와 호환되기 힘들다 (0) | 2022.10.19 |
[Android] Java 프로젝트에 Kotlin 언어 적용하기 (0) | 2022.10.19 |
[Android] 안드로이드에서 Notification이란? (0) | 2022.10.14 |