尝试在Android 4.4.2上创建一个反应原生项目,我得到了这个错误屏幕
却找不到解决的办法。我尝试重新启动packager,重新连接设备,甚至重新安装react native并开始新的项目。在6.0.0和更高版本上,它工作得很好。
尝试在Android 4.4.2上创建一个反应原生项目,我得到了这个错误屏幕
却找不到解决的办法。我尝试重新启动packager,重新连接设备,甚至重新安装react native并开始新的项目。在6.0.0和更高版本上,它工作得很好。
当前回答
这对我来说是有效的(在尝试了我发现的所有其他解决方案之后…):
在\Android\sdk\platform-tools中运行adb reverse tcp:8081 tcp:8081
其他回答
对此,一个可能的解决方案是,您很可能不首先捆绑应用程序,而是执行以下步骤,然后将app-debug.apk部署到您的设备上
$ cd myproject
$ react-native start > /dev/null 2>&1 &
$ curl "http://localhost:8081/index.android.bundle?platform=android" -o "android/app/src/main/assets/index.android.bundle"
(如果文件夹资产不存在,创建它)
然后从项目根运行
$> (cd android/ && ./gradlew assembleDebug)
将创建的apk安装到您的设备,地址:android/app/build/outputs/apk/app-debug.apk
如果这解决了你的问题,请告诉我
编辑:
你可以把它放在你的包裹里。我相信它会在即将发布的react-native版本中被修复,并将在组装最终的APK之前执行,因此这将不需要(我希望也是如此)
把:
"scripts": {
"build": "(cd android/ && ./gradlew assembleDebug)",
"start": "node node_modules/react-native/local-cli/cli.js start",
"bundle-android": "react-native bundle --platform android --dev false --entry-file index.android.js --bundle-output android/app/src/main/assets/index.android.bundle --sourcemap-output android/app/src/main/assets/index.android.map --assets-dest android/app/src/main/res/"
},
或者如前所述的旋度等效,但对于大多数情况,上面的更健壮
我也遇到了同样的问题,但这是我自己犯的一个愚蠢的错误……
从Android工作室,我从应用程序项目而不是根项目启动installDebug/installRelease gradle脚本。
我在设备Z3 Compact D5803 - 6.0.1上有同样的异常
我打开。buckconfig文件并修改了这一行:
target =谷歌Inc.:谷歌api:23
to
target =谷歌Inc.:谷歌api:24
因为我在SDK管理器中看到Android 6。X的api级别为24。
在终端中尝试此命令,然后重新加载。这对我很有效
Adb reverse tcp:8081 tcp:8081
我尝试了上面/下面的许多建议,但最终,我面临的问题是watchman的权限问题,它在之前使用homebrew安装。如果您在尝试使用模拟器时查看您的终端消息,并在模拟器上遇到关于watchman的“Permission denied”错误以及“Could not get BatchedBridge”消息,请执行以下操作:
进入您的/Users/<username>/Library/LaunchAgents目录并更改权限设置,以便您的用户可以读和写。这与你是否有一个com.github.facebook.watchman.plist文件无关。