当我尝试执行npm start时,它可以正常工作,但是当我尝试通过expo运行我的应用程序时,该过程将持续到100%,然后再没有任何反应。我没有得到那儿的确切问题。我在package.json中有以下内容。...请帮助我解决此问题。
{
"name": "ProMeeting",
"version": "0.1.0",
"private": true,
"devDependencies": {
"jest-expo": "~29.0.0",
"react-native-scripts": "^1.14.0",
"react-test-renderer": "16.3.1"
},
"main": "./node_modules/react-native-scripts/build/bin/crna-entry.js",
"scripts": {
"start": "react-native-scripts start",
"eject": "react-native-scripts eject",
"android": "react-native-scripts android",
"ios": "react-native-scripts ios",
"test": "jest"
},
"jest": {
"preset": "jest-expo"
},
"dependencies": {
"@babel/preset-react": "^7.0.0-beta.56",
"expo": "^29.0.0",
"firebase": "^5.3.1",
"native-base": "^2.7.2",
"react": "16.3.1",
"react-native": "^0.55.4",
"react-native-firebase": "^4.3.8",
"react-native-vector-icons": "^5.0.0",
"react-navigation": "^2.11.2"
}
}
答案 0 :(得分:7)
这可能有多种原因。我试图在模拟器上运行其他应用程序,重新启动模拟器,甚至试图删除构建文件夹并从头开始重建,但是这些方法都不能解决问题。
最终起作用的是我一直在后台工作的restarting the React Native Debugger
。
答案 1 :(得分:2)
就我而言,我的代码在Android中工作,但在iOS模拟器中不工作。
SplashScreen.preventAutoHide();
是问题所在。
我分别两次调用了该方法App.js和Main.js。
在App.js中将其删除后,它可以正常工作。
(我认为restarting the React Native Debugger
也有帮助)
答案 2 :(得分:2)
答案 3 :(得分:1)
就我而言,这总是在我打开远程JS调试时发生的。 JS捆绑包将加载到100%,但是应用程序被卡住了。 React Native Debugger无法连接,并显示错误消息Another debugger is already connected
。
在尝试了所有事情(缓存重置,重新启动Metro Builder,重新启动模拟器)而没有任何运气之后,我记得我曾经使用过的唯一“其他调试器”是Chrome Devtools,因此我退出了Chrome,并立即退出了所有工作。又在工作。
结果是,即使我关闭了正在调试应用程序的Chrome选项卡,Chrome中的某些后台进程仍作为调试器附加到了该应用程序(也在模拟器重新启动后)。然后它在启动时遇到了某种断点或异常,因此它暂停了,我只能看到Downloading Javascript bundle 100%
消息。
答案 4 :(得分:0)
您需要安装Android模拟器,例如,使用Android Studio或Genymotion。接下来创建Android虚拟设备。之后,启动您的虚拟设备,然后运行
sed
此后,Expo应该在您的设备上启动。
答案 5 :(得分:0)
您应该尝试设置一个新的本机项目并将文件传输到新项目中,然后尝试再次运行它,如果缺少构建文件,则会发生此问题
答案 6 :(得分:0)
react-native-firebase通常会引起相同的问题。
以下是react-native-firebase的官方集成指南。 https://rnfirebase.io/docs/v5.x.x/installation/ios
B)在didFinishLaunchingWithOptions:(NSDictionary *)launchOptions方法的开头,添加以下行:
[FIRApp配置]; “建议在创建RCTRootView之前在方法中添加该行。否则,在JavaScript代码中已经要求进行初始化之后,可能会发生初始化-导致应用未初始化异常。”
您有GoogleService-Info.plist吗? 您是否安装了Pod? 您是否已在模拟器中>硬件>擦除所有内容和设置?
答案 7 :(得分:0)
我也遇到了同样的问题,做了所有可能的事情,但是没有用,我恢复了所有更改,但是问题仍然存在。
我创建了自己的解决方案,并且对我来说效果很好,也许对某人有帮助,您也可以在 Apple 和 Android 上尝试
npm update -g expo-cli
和npm update -g react-native
更新expo-cli和react-native expo init project_name
创建新项目(使用原始项目名称,将先前的项目重命名以进行备份)。expo install package_name
给出版本(手动,因为版本冲突可能会导致这种情况)。app.json
和App.js
添加到该新项目中。expo start -c
命令再次运行您的项目。 接下来就是您的工作项目!
快乐编码!
答案 8 :(得分:0)
截至 2021 年 1 月,your node version 可能是导致此问题的原因之一。
使用 node -v
检查您的节点版本,如果版本为 15.x.x
,请尝试将版本降级为 14.15.1
:
$ npm install -g n
$ n 14.15.1
答案 9 :(得分:-1)
这则帖子很旧,但请放手, 我如何为自己解决这个问题:
> install yarn
> run: yarn remove react-native
> run: yarn add react-native
> run: react-native run-android
答案 10 :(得分:-1)
对我来说,清除EXPO应用程序数据有效。显然我已经将数据存储在SQLite中,然后我一直在错误地获取数据。
答案 11 :(得分:-1)
在我的情况下,我删除了代码中的for循环,足以解决此问题。显然,我的react应用每次运行该循环时都会崩溃。
答案 12 :(得分:-1)
就我而言;
我添加了一个新软件包(@ khanshamshad32 / carousel)v1.0.1。我猜包裹有问题,我在真实设备上的博览会卡住了%100 ..,而我打算删除包裹中的所有物品。
1-来自package.json(相对实例)
2-来自package-lock.json(相对实例)
3-来自node_modules的“程序包名称”文件夹
它确实起作用