본문 바로가기

잡다한 기술

[React Native] 리액트 네이티브에 버튼 추가시 DelegateUtil$accessibilityRole 오류가 발생할 경우




# 해결법


처음 리액트 네이티브 프로젝트를 만들고 실행을 하고 버튼을 추가후 실행하면

아래와 같은 오류가 발생한다.


java.lang.string cannot be cast to com.facebook.react.uimanager.accessibility DelegateUtil$accessibilityRole


나는 뭐 하나 만지지도 않았는데

왜 이런 오류가 발생할까 찾아봤고


원인과 해결법을 발견하였다.


원인은 리액트 네이티브 최신 버전(0.57.3)인 node_module에 button 관련에서 오류를 발생 시키는 것이었다.


따라서 node_module을 삭제하고 다운 그레이드를 시키면 정상적으로 실행이 된다.


방법은 아래와 같다.


1) 프로젝트 root폴더에 들어간다.


2) rmdir node_modules /s


3) npm i -S react-native@0.57.1


4) npm add @babel/runtime


5) npm i schedule@0.4.0 --save-dev


6) npm i


그 후 다시 react-native run-android 를 실행한다.

그럼 다시 정상적으로 실행이 될것이다.



# 마무리


위 포스트는 제가 직접 제작한 것 입니다.

그렇기 때문에 틀린점이나 설명이 엉성한 점이 존재할 수 있습니다.

만약 틀린점이나 설명이 엉성한 부분이 존재하면 댓글로 알려주세요.

빠른 처리 하도록 하겠습니다.


티스토리 앱으로는 댓글 이용이 불가능 하므로 웹 브라우저로 봐 주세요

(URL : http://junprogramer.tistory.com/)


읽어주셔서 감사합니다.