source

react-native에서 Appregistry.runApplication을 호출하는 동안 오류가 발생했습니다.

factcode 2023. 4. 4. 22:30
반응형

react-native에서 Appregistry.runApplication을 호출하는 동안 오류가 발생했습니다.

안드로이드 에뮬레이터에서 리액트 네이티브 앱을 실행하려고 하는데 다음과 같은 오류가 나타납니다.

Appregistry.runApplication 호출 오류

AVD: 'Nexus_5X_'API_23(AVD) 6.0 OS: Windows 10

여기에 이미지 설명 입력

이것 좀 도와주시겠어요?

저는 며칠 전에 당신이 안고 있는 것과 거의 같은 문제가 있었습니다.나에게 그것은 진짜 장치였다.

제가 조사한 바로는 다음과 같은 솔루션이 도움이 되었습니다.

react-native run-android에러가 표시됩니다.

「adb.exe」를 포함한 디렉토리에 액세스 합니다(저에게는 C:\Users\username\AppData\Local\안드로이드\Sdk\platform-tools\ )

여기서 터미널을 엽니다. '아예'라고 입력합니다.adb reverse tcp:8081 tcp:8081

그 후, 앱을 전화기에 새로고침하면 동작합니다.

이게 도움이 됐으면 좋겠어!! (그렇지 않으면 나한테 수치심을 줘)

건배;)

편집:

나는 이 문제를 해결할 더 편리한 해결책을 찾았다.

"react-native run-android"를 실행하면 "adb가 내부 또는 외부 명령으로 인식되지 않습니다.."

adb 명령어를 수동으로 사용하는 대신 adb.exe로 이어지는 환경변수를 추가할 수 있습니다.

[컨트롤 패널]> [시스템과 보안]> [시스템]> [시스템 상세 설정]으로 이동합니다.

여기서 "환경 변수"를 클릭합니다."시스템 변수" 섹션에서 "경로" 변수를 검색합니다.클릭하여 Edit(편집) 버튼을 누릅니다.

여기서 이 변수에 새 경로를 추가할 수 있습니다."New(새로 만들기)" 버튼을 클릭하여 adb.exe 경로를 입력하십시오.예 C의 경우:\Users\username\AppData\Local\안드로이드\Sdk\platform-tools\

(가장 오래된 버전의 Windows에서는 ";C:\Users\username\AppData\Local\안드로이드\콘텐츠에 Sdk\platform-tools\)를 추가합니다.

끝입니다. 하면, 「 」, 「 」가 됩니다.adb reverse tcp:8081 tcp:8081이치노

이것이 당신에게 더 많은 도움이 되기를 바랍니다!

나도 같은 문제가 있었어, 내 해결책은 도망가는 거였어.

$ react-native start

백그라운드에서 실행하다

$ react-native run-android

이 에러는, 다음의 경우에 발생합니다.

를 실행하기 위해 하여 실행하기만 됩니다.) 패키지가 제대로 실행되지 않습니다.react-native start.

2) Appregistry 모듈에 대해 잘못된 코드를 작성했을 때.

3) Xcode, Packager, Simulator 등을 모두 셧다운한 후 재기동합니다.

4) 에러에서 생각나는 것은 모듈의 이름입니다.

AppRegistry.registerComponent('AppName', () => componentName)

matches with the @"AppName" on your AppDelegate.m on the call for

[[RCTRootView alloc] initWithBundleUrl:...
                            moduleName:@"AppName"
                         launchOptions:...

5) react의 컴포넌트를 사용하고 있기 때문에 클래스 이름의 첫 글자를 대문자로 붙여야 합니다.

점이인지 한 번 요?index.android.js ★★★★★★★★★★★★★★★★★」index.ios.js

건배 :)

마침내, 나는 그것을 작동시켰다.새로운 AVD를 작성했습니다.

Nexus6 API 23

아까는 Nexus5x API 23으로 시도했습니다.모두 감사합니다

저도 같은 문제가 있었어요.McAfee가 포트 8081 및 블록패키지 상에 있었던 것으로 나타납니다.솔루션:

react-native start --port your_port

Android 에뮬레이터의 Command + M show dev menu에서 "Dev Settings"를 클릭한 다음 "Debug server host and port"를 클릭하여 your_ip:your_port로 설정합니다.

그리고나서

react-native run-android

제 경우(물론 여기나 다른 곳에서 찾을 수 있는 모든 것을 살펴본 후, 저는 휴대전화의 와이파이가 꺼져 있다는 것을 깨달았습니다.)그런 식으로는 안 돼!도움이 되었으면 좋겠다

저도 같은 문제가 있어서 안드로이드 에뮬레이터에서 로컬 컴퓨터를 디버깅 서버로 설정함으로써 해결할 수 있었습니다..Command + M「Dev Settings」는 「Debug Server host and port」의 「Debug Server host and port」의 「Debug Server host and port」의 「Debug Server host and port」의 「Debug Server host and port」의 「Debug Server host and port」의 127.0.0.1:8081. 다음 프로젝트 합니다.react-native run-android이게 도움이 됐으면 좋겠어요.

포트 8081을 사용할 수 있는지 확인합니다.이 경우 서비스 중 하나가 포트 8081(tomcat webserver)에서 실행되고 있습니다.

같은 문제(이것은 매우 일반적인 메시지이기 때문에)가 발생하고 있었습니다만, 문제는 달랐습니다.제 경우 에뮬레이터는 작동하지 않았지만 실제 장치는 작동했습니다.

였다.inotify는 상에서 할 수 시스템에 대한 변경을 합니다.또한 native를 널리에는 Linux를 실행하려고 .Linux 커널 서브시스템은 파일 시스템을 확장하여 파일 시스템의 변경을 인지하고 이러한 변경을 어플리케이션에 보고합니다.【Android studio】는 네이티브로 반응합니다.실행하려고 할 때쯤이면react-native run-android모든 워쳐가 시스템에 할당되어 있기 때문에 같은 메시지에서 프로세스가 실패합니다.

수 watchers 하려면 inotify .sysctl.conf/etc/sysctl.conf또는/etc/sysctl.d/custom_name.conf다음 행을 추가합니다.

 fs.inotify.max_user_watches = 5242881

파일을 쓴 후 실행해야 합니다.sysctl -p filename.conf여기서 'sysctl.conf'는 sysctl의 .conf 파일을 저장한 경로와 이름입니다.변경이 적용되면 모든 것이 예상대로 작동합니다.

저도 같은 문제가 있었어요.나는 실제 장치에서 실행되도록 문제를 해결했다.

Jedi씨가 말한 것처럼 McAfee는 포트 8081을 차단했습니다.그래서 Project-Folder>\node_modules\react-native\local-cli\runAndroid.js 파일의 함수를 변경했습니다.

function tryRunAdbReverse(device) {
   try {
     const adbPath = getAdbPath();
     const adbArgs = ['reverse', 'tcp:8081', 'tcp:8081'];

로.

function tryRunAdbReverse(device) {
   try {
     const adbPath = getAdbPath();
     const adbArgs = ['reverse', 'tcp:8081', 'tcp:3040'];

에 애플리케이션을 기동했습니다.

      react-native start --port 3040

Path 환경변수에 플랫폼 툴을 추가하면 리액트 네이티브가 애드비 서버를 시작할 수 있습니다.

다음 정보를 얻을 수 있었습니다.

'adb' is not recognized as an internal tool or program

이 문제를 해결하기 위해 다음 사항을 추가했습니다.Path환경 변수입니다.

C:\Users\<Username>\AppData\Local\Adnroid\sdk\platform-tools

그러면 실행 중react-native run-android동작했다!

이 질문에 대한 답변이 매우 많았지만, 제 해결책을 추가할 가치가 있다고 생각합니다. 이것이 다른 사람에게 도움이 되기를 바랍니다.

저의 경우 가상 머신에서 문제가 발생했지만 조사하지는 않았지만 새로운 가상 디바이스를 생성함으로써 앱은 문제없이 원활하게 실행되었습니다.

새로운 가상 디바이스를 생성하기만 하면 됩니다.:)

1주일 동안 레지스트리 오류에 대한 솔루션을 찾아보고 이 모든 솔루션을 시도했지만 누락된 것은 expo에서 app.json 파일을 추가해야 한다는 것뿐입니다.

    "platforms": [
      "ios",
      "android",
      "web"
    ],

만약 다른 모든 것이 실패한다면 엑스포에 이것을 추가해 보세요.

언급URL : https://stackoverflow.com/questions/43744156/error-calling-appregistry-runapplication-in-react-native

반응형