상황 01.
오늘 새벽까지 잘 작동했던 react-native run-android 가 오후에 실행했더니 에러가 발생했다.
아니 코드 한 줄 바꾼게 없는데 왜??
내용을 보면 빌드는 성공한 것 같은데 에뮬레이터에서 앱을 실행시키지를 못했다.
내 작업환경은 macOS에서 안드로이드 앱을 디바이스 없이 에뮬레이터로만 확인하는 중.
android build Error type 3
Error: Activity class { } does not exist. 같은 문구로 구글링해서 몇 가지 블로그 글을 찾았지만 따라해도 해결되지 않았다.
대부분 제시한 해결방법은 안드로이드 스튜디오에서 상단 메뉴에
build > Clean Project 를 한 후 안드로이드 스튜디오 재 실행 > rebuild project 클릭 > 앱 실행 이었다.
나에게는 통하지 않았음.
참고 블로그 : https://yeolco.tistory.com/88
위의 참고 블로그 내용에 따르면,
이 오류는 프로젝트를 처음 실행하면 앱이 하나 생성되는데, USB를 컴퓨터에 연결한 상태에서 앱을 삭제하면 ADB는 앱이 휴대폰에 있는걸로 인식하기 때문에 발생하는 오류라고 했다. 해결방법은 설정>저장소(Storage)에서 앱을 삭제해주면 된다고.
나는 폰이 없는 상태이므로 위와 동일한 케이스는 아닌것 같지만 에뮬레이터 상의 설정으로 들어가 앱을 삭제해봤다.
그리고 다시 react-native run-android 를 하니 실행됐다.
경로 : Settings > App & notification > 테스트중이던 앱 > UNINSTALL
상황 02.
작업 중 또 다시 react-native run-android 가 작동하지 않았다.
에러 메시지가 달랐는데 이번엔 또 왜?
안드로이드 개발 환경 설정은 react-native 도큐먼트 가이드대로 맞춰 놓았었고, 바로 직전까지도 문제가 없었기 때문에 SDK나 그런 문제는 아닐 것 같았다.
참고 블로그: https://pilot376.tistory.com/54
참고한 블로그에 따르면 Error: spawn ./gradlew EACCES 이 문제는 Android gradlew의 권한 설정과 관련있는 것 같았는데,
아직 gradlew 에 관해서는 아는게 별로 없다. 정확한 내용이 잘 이해되지 않아 찜찜하지만,
어쨌든 Android / gradlew의 권한을 755로 변경하는 아래 명령어 입력 후 다시 run-android 했더니 다시 잘 작동했다.
% chmod 755 android/gradlew
% npm run android // 성공!
해결.
'Coding > TIL (Today I Learned)' 카테고리의 다른 글
[AWS] MFA 키 분실 후 인증받고 재설정 한 경험 (5) | 2022.08.05 |
---|---|
state 불변성 관리, immer 라이브러리 써보기. (0) | 2020.05.25 |
MySQL : connection 중복 이슈 (0) | 2020.04.05 |
MySQL: SQL문 입력하다 ' 또는 `을 입력했을 때 (2) | 2020.04.02 |
JavaScript: Promise, async & await 이해 (0) | 2020.03.20 |