我的远程调试(通过Chrome使用React本机开发工具0.14.8)可以很好地工作。
我不知道之间到底发生了什么(我升级到了react原生0.21,对android进行了更新,用apt-get更新/升级更新了LinuxMint17.3)。
但是现在我看到的只有“请等待连接到远程调试器”,在我的模拟器上大约5-8秒,然后我得到错误(见附件图像):“无法与远程调试器连接”。
我尝试过重新安装Chrome本机扩展。试着重建我的应用程序。帮不上忙。我不太清楚问题出在哪里。可能我只是需要增加一个连接超时的值。但似乎没有这样的选择。
下面也是我的package.json (由于各种依赖问题,需要几天的时间进行0.20到0.21的升级)。也许有一个新的设置,我错过了,有人可以指出。
{
"name": "ftesting",
"version": "1.0.0",
"description": "ftesting desc",
"main": "index.js",
"scripts": {
"test": "echo \"Error: no test specified\" && exit 1",
"start": "node_modules/react-native/packager/packager.sh",
"android-setup-port": "adb reverse tcp:8081 tcp:8080",
"test": "eslint ./src/js.app/my.forms",
"start": "rnws start",
"clean:babelrc": "find ./node_modules -name react-packager -prune -o -name '.babelrc' -print | xargs rm -f",
"postinstall": "npm run clean:babelrc"
},
"repository": {
"type": "git",
"url": "xyz" },
"keywords": [
"ftesting"
],
"author": "ls",
"license": "MIT",
"engines": {
"node": ">=4",
"npm": ">=2 <4"
},
"devDependencies": {
"babel-eslint": "^6.0.0-beta.1",
"babel-preset-es2015": "^6.6.0",
"babel-preset-react": "^6.5.0",
"babel-preset-stage-1": "^6.5.0",
"eslint": "~2.2.0",
"eslint-loader": "^1.1.1",
"eslint-plugin-react": "^4.2.0"
},
"dependencies": {
"react-native": "^0.21.0",
"@remobile/react-native-splashscreen": "^1.0.3",
"react-native-blur": "^0.7.10",
"react-native-htmlview": "^0.2.0",
"react-native-material-kit": "^0.3.0",
"react-native-material-design": "^0.3.3"
}
}
发布于 2016-03-15 03:02:54
有一个github问题发布了这个问题。你可以跟着那里:https://github.com/facebook/react-native/issues/6390
发布于 2016-05-02 19:47:12
也许这对其他人来说是个愚蠢的问题,如果有帮助的话,对我来说,当我连接wifi时解决了这个问题(我已经断开了它:)
我意识到这是一个连接问题,当我从浏览器请求响应本机的url是从(设备应用程序中的配置设置中的)获取index.bundle时,发现它是可访问的.
我用的是0.25.0-rc
发布于 2016-05-15 00:34:31
现在肯定起作用了。使用0.25.1测试,查看链接github问题中的答复。
总的来说,我认为最大的问题是,一旦本机团队解决了0.21中引入的原始问题,他们就改变了构建应用程序的方式。
如果你不改变,错误是明显的。因此,在调试/构建过程中不可能捕获它。
基本上,从2016年2月开始,您就不应该再从maven存储库中提取react原生jar了。相反,您需要将您的gradle.build指向来自npm-模块位置的react本机jar。
allprojects {
repositories {
mavenLocal()
jcenter()
maven {
// All of React Native (JS, Obj-C sources, Android binaries) is installed from npm
url "$projectDir/../../node_modules/react-native/android"
}
}
}
然后
compile "com.facebook.react:react-native:+"
以上更改的这种组合,使我能够链接到react本机jar的最新副本,而不是从maven中提取0.20.1 (注意,自2016年2月以来,maven中的0.20.1没有被修改)。
https://stackoverflow.com/questions/35973511
复制相似问题