V P*_*V P 4 react-native okhttp3
一直在苦苦挣扎这一周,没有成功.
我从一个好的锅炉板应用程序(只是另一个应用程序)开始,并添加了一个单击,其中详细活动是React本机活动.
一旦我点击,整个应用程序崩溃.
03-25 14:58:35.731 2746-4224/com.justanotherandroidapp.develop E/AndroidRuntime:FATAL EXCEPTION:AsyncTask#2进程:com.justanotherandroidapp.develop,PID:2746 java.lang.RuntimeException:执行doInBackground时发生错误()在android.os.AsyncTask $ 3.done(AsyncTask.java:325)java.util.concurrent.FutureTask.finishCompletion(FutureTask.java:354)java.util.concurrent.FutureTask.setException(FutureTask.java: 223)java.util.concurrent.FutureTask.run(FutureTask.java:242)at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1133)at java.util.concurrent.ThreadPoolExecutor $ Worker.run(ThreadPoolExecutor) .java:607)在java.lang.Thread.run(Thread.java:761) 引起:java.lang.NoSuchMethodError:没有虚方法setCallWebSocket(Lokhttp3/Call;)类Lokhttp3/internal/Internal中的V; 或者它的超类('okhttp3.internal.Internal'的声明出现在/data/app/com.justanotherandroidapp.develop-2/split_lib_dependencies_apk.apk:classes57.dex)okhttp3.ws.WebSocketCall.enqueue(WebSocketCall.java : 108) 位于com.facebook.react.devsupport的com.facebook.react.devsupport.InspectorPackagerConnection $ Connection.connect(InspectorPackagerConnection.java:243)com.facebook.react.devsupport.InspectorPackagerConnection.connect(InspectorPackagerConnection.java:44) .DevServerHelper $ 3.doInBackground(DevServerHelper.java:168)at com.facebook.react.devsupport.DevServerHelper $ 3.doInBackground(DevServerHelper.java:164)at android.os.AsyncTask $ 2.call(AsyncTask.java:305)at java .util.concurrent.FutureTask.run(FutureTask.java:237)at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1133)at java.util.concurrent.ThreadPoolExecutor $ Worker.run(ThreadPoolExecutor.java:607) )在java.lang.Thread.run(Thread.java:761)
Run Code Online (Sandbox Code Playgroud)--------- beginning of system
整个应用程序在GitHub上 https://github.com/vladp/Just-Another-Android-App
它在ReactNative的DevSuportManagerImpl.java中崩溃(使用react native 0.42,API 25)在这两个调用之间崩溃
mDevServerHelper.openPackagerConnection(this);
mDevServerHelper.openInspectorConnection();
Run Code Online (Sandbox Code Playgroud)
(node_modules\react-native\android\com\facebook\react\react-native\0.42.3\react-native-0.42.3-sources.jar!\ com\facebook\react\devsupport\DevSupportManagerImpl中的第878行,第879行.java)
这个问题并没有改善我是否从build.gradle中删除或添加okhttp和okhttp-ws
//React Native -- start
compile ("com.facebook.react:react-native:0.42.+"){
// https://github.com/facebook/react-native/issues/10233
exclude group:'com.facebook.stetho', module:'stetho'
exclude module: 'jsr305'
}
compile 'com.squareup.okhttp3:okhttp:3.6.0'
compile 'com.squareup.okhttp3:okhttp-ws:3.4.2'
Run Code Online (Sandbox Code Playgroud)
提前感谢任何帮助.
终于弄明白该怎么做了.我强制gradle将对okhttp的所有引用解析为版本3.4.1.值得庆幸的是,在我的测试应用程序中,所有其他组件都被容忍为"强制使用最低公分母"(即本机反应原理使用的okhttp的3.4.1版本).
configurations.all {
resolutionStrategy {
// force certain versions of dependencies (including transitive)
force 'com.squareup.okhttp3:okhttp:3.4.1'
}
}
Run Code Online (Sandbox Code Playgroud)
上面的这条线原来是我花了大概30个小时的解决方案......
| 归档时间: |
|
| 查看次数: |
1203 次 |
| 最近记录: |