Java 在Android中处理HTTP客户端调用时出错

Java 在Android中处理HTTP客户端调用时出错,java,android,Java,Android,我正在尝试创建一个android应用程序来连接云。我基本上尝试使用您的api连接到koofr.eu Koofr是存储、备份和共享照片、视频和文档的安全而简单的方法。随时随地从任何设备(无论是计算机、手机还是平板电脑)访问您的所有数据。安全和保障是我们软件和心态的核心 他们在Java上提供的文档很小,看起来很简单,但库相当大。另外,我遇到的一个问题是,该库使用了另外3-4个库来添加到工作中 这就是我的应用程序gradle的样子: dependencies { /*compile fileTr

我正在尝试创建一个android应用程序来连接云。我基本上尝试使用您的api连接到koofr.eu

Koofr是存储、备份和共享照片、视频和文档的安全而简单的方法。随时随地从任何设备(无论是计算机、手机还是平板电脑)访问您的所有数据。安全和保障是我们软件和心态的核心

他们在Java上提供的文档很小,看起来很简单,但库相当大。另外,我遇到的一个问题是,该库使用了另外3-4个库来添加到工作中

这就是我的应用程序gradle的样子:

dependencies {
   /*compile fileTree(dir: 'libs', include: ['*.jar']) */
    compile 'com.android.support:appcompat-v7:21.0.3'
    compile 'net.koofr:java-koofr:1.2.8'
    compile ("org.restlet.jse:org.restlet.ext.httpclient:2.1.2") {
        exclude group: 'org.restlet', module: 'jse'
        exclude group: 'org.restlet.ext', module: 'ss1'
    }
    compile 'org.apache.httpcomponents:httpclient:4.3.5'
    compile 'org.restlet.jse:org.restlet.ext.jackson:2.1.2'


    android {
        packagingOptions {
            exclude 'META-INF/DEPENDENCIES.txt'
            exclude 'META-INF/LICENSE.txt'
            exclude 'META-INF/NOTICE.txt'
            exclude 'META-INF/NOTICE'
            exclude 'META-INF/LICENSE'
            exclude 'META-INF/DEPENDENCIES'
            exclude 'META-INF/notice.txt'
            exclude 'META-INF/license.txt'
            exclude 'META-INF/dependencies.txt'
            exclude 'META-INF/ASL2.0'
            exclude 'META-INF/services/org.restlet.engine.ClientHelper'
        }
    }
在清单中,我添加了允许在应用程序中使用internet的用户权限:

<uses-permission android:name="android.permission.INTERNET" />
基本上,异常消息如下所示:

Internal Connector Error (1002) - The connector encountered an unexpected condition which prevented it from fulfilling the request
但这并没有帮助我找到解决问题的方法,所以我找到了一些我试图理解的警告

03-12 21:50:44.617    7027-7027/com.example.marian.digimusicstream W/System.err﹕ Starting the Apache HTTP client
03-12 21:50:44.619    7027-7027/com.example.marian.digimusicstream W/System.err﹕ Error while handling an HTTP client call
03-12 21:50:44.619    7027-7027/com.example.marian.digimusicstream W/System.err﹕ [ 03-12 21:50:44.619  7027: 7027 W/System.err ]
    android.os.NetworkOnMainThreadException
03-12 21:50:44.619    7027-7027/com.example.marian.digimusicstream W/System.err﹕ at android.os.StrictMode$AndroidBlockGuardPolicy.onNetwork(StrictMode.java:1147)
03-12 21:50:44.619    7027-7027/com.example.marian.digimusicstream W/System.err﹕ at java.net.InetAddress.lookupHostByName(InetAddress.java:423)
03-12 21:50:44.619    7027-7027/com.example.marian.digimusicstream W/System.err﹕ at java.net.InetAddress.getLocalHost(InetAddress.java:396)
03-12 21:50:44.619    7027-7027/com.example.marian.digimusicstream W/System.err﹕ at org.restlet.engine.adapter.ClientCall.getLocalAddress(ClientCall.java:67)
03-12 21:50:44.620    7027-7027/com.example.marian.digimusicstream W/System.err﹕ at org.restlet.engine.adapter.ClientCall.<init>(ClientCall.java:90)
03-12 21:50:44.620    7027-7027/com.example.marian.digimusicstream W/System.err﹕ at org.restlet.ext.httpclient.internal.HttpMethodCall.<init>(HttpMethodCall.java:107)
03-12 21:50:44.620    7027-7027/com.example.marian.digimusicstream W/System.err﹕ at org.restlet.ext.httpclient.HttpClientHelper.create(HttpClientHelper.java:298)
03-12 21:50:44.620    7027-7027/com.example.marian.digimusicstream W/System.err﹕ at org.restlet.engine.adapter.ClientAdapter.toSpecific(ClientAdapter.java:159)
03-12 21:50:44.620    7027-7027/com.example.marian.digimusicstream W/System.err﹕ at org.restlet.engine.adapter.HttpClientHelper.handle(HttpClientHelper.java:111)
03-12 21:50:44.620    7027-7027/com.example.marian.digimusicstream W/System.err﹕ at org.restlet.Client.handle(Client.java:180)
03-12 21:50:44.620    7027-7027/com.example.marian.digimusicstream W/System.err﹕ at org.restlet.resource.ClientResource.handle(ClientResource.java:1136)
03-12 21:50:44.621    7027-7027/com.example.marian.digimusicstream W/System.err﹕ at org.restlet.resource.ClientResource.handleOutbound(ClientResource.java:1225)
03-12 21:50:44.621    7027-7027/com.example.marian.digimusicstream W/System.err﹕ at org.restlet.resource.ClientResource.handle(ClientResource.java:1068)
03-12 21:50:44.621    7027-7027/com.example.marian.digimusicstream W/System.err﹕ at org.restlet.resource.ClientResource.handle(ClientResource.java:1044)
03-12 21:50:44.621    7027-7027/com.example.marian.digimusicstream W/System.err﹕ at org.restlet.resource.ClientResource.handle(ClientResource.java:950)
03-12 21:50:44.621    7027-7027/com.example.marian.digimusicstream W/System.err﹕ at org.restlet.resource.ClientResource.get(ClientResource.java:658)
03-12 21:50:44.621    7027-7027/com.example.marian.digimusicstream W/System.err﹕ at net.koofr.api.v2.StorageApi.authenticate(StorageApi.java:150)
03-12 21:50:44.621    7027-7027/com.example.marian.digimusicstream W/System.err﹕ at net.koofr.api.v2.DefaultClientFactory.create(DefaultClientFactory.java:66)
03-12 21:50:44.621    7027-7027/com.example.marian.digimusicstream W/System.err﹕ at com.example.marian.digimusicstream.LoginActivity$1.onClick(LoginActivity.java:51)
03-12 21:50:44.621    7027-7027/com.example.marian.digimusicstream W/System.err﹕ at android.view.View.performClick(View.java:4763)
03-12 21:50:44.621    7027-7027/com.example.marian.digimusicstream W/System.err﹕ at android.view.View$PerformClick.run(View.java:19821)
03-12 21:50:44.621    7027-7027/com.example.marian.digimusicstream W/System.err﹕ at android.os.Handler.handleCallback(Handler.java:739)
03-12 21:50:44.621    7027-7027/com.example.marian.digimusicstream W/System.err﹕ at android.os.Handler.dispatchMessage(Handler.java:95)
03-12 21:50:44.621    7027-7027/com.example.marian.digimusicstream W/System.err﹕ at android.os.Looper.loop(Looper.java:135)
03-12 21:50:44.621    7027-7027/com.example.marian.digimusicstream W/System.err﹕ at android.app.ActivityThread.main(ActivityThread.java:5274)
03-12 21:50:44.621    7027-7027/com.example.marian.digimusicstream W/System.err﹕ at java.lang.reflect.Method.invoke(Native Method)
03-12 21:50:44.621    7027-7027/com.example.marian.digimusicstream W/System.err﹕ at java.lang.reflect.Method.invoke(Method.java:372)
03-12 21:50:44.621    7027-7027/com.example.marian.digimusicstream W/System.err﹕ at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:909)
03-12 21:50:44.621    7027-7027/com.example.marian.digimusicstream W/System.err﹕ at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:704)
03-12 21:50:44.622    7027-7027/com.example.marian.digimusicstream W/System.err﹕ A recoverable error was detected (1002), attempting again in 2000 ms.
03-12 21:50:44.617 7027-7027/com.example.marian.digimusicstream W/System.err﹕ 启动apachehttp客户端
03-12 21:50:44.619 7027-7027/com.example.marian.digimusicstream W/System.err﹕ 处理HTTP客户端调用时出错
03-12 21:50:44.619 7027-7027/com.example.marian.digimusicstream W/System.err﹕ [03-12 21:50:44.619 7027:7027 W/System.err]
android.os.NetworkOnMainThreadException
03-12 21:50:44.619 7027-7027/com.example.marian.digimusicstream W/System.err﹕ 在android.os.StrictMode$AndroidBlockGuardPolicy.onNetwork(StrictMode.java:1147)
03-12 21:50:44.619 7027-7027/com.example.marian.digimusicstream W/System.err﹕ 位于java.net.InetAddress.lookupHostByName(InetAddress.java:423)
03-12 21:50:44.619 7027-7027/com.example.marian.digimusicstream W/System.err﹕ 位于java.net.InetAddress.getLocalHost(InetAddress.java:396)
03-12 21:50:44.619 7027-7027/com.example.marian.digimusicstream W/System.err﹕ 位于org.restlet.engine.adapter.ClientCall.getLocalAddress(ClientCall.java:67)
03-12 21:50:44.620 7027-7027/com.example.marian.digimusicstream W/System.err﹕ 位于org.restlet.engine.adapter.ClientCall(ClientCall.java:90)
03-12 21:50:44.620 7027-7027/com.example.marian.digimusicstream W/System.err﹕ 位于org.restlet.ext.httpclient.internal.HttpMethodCall.(HttpMethodCall.java:107)
03-12 21:50:44.620 7027-7027/com.example.marian.digimusicstream W/System.err﹕ 位于org.restlet.ext.httpclient.HttpClientHelper.create(HttpClientHelper.java:298)
03-12 21:50:44.620 7027-7027/com.example.marian.digimusicstream W/System.err﹕ 位于org.restlet.engine.adapter.ClientAdapter.toSpecific(ClientAdapter.java:159)
03-12 21:50:44.620 7027-7027/com.example.marian.digimusicstream W/System.err﹕ 位于org.restlet.engine.adapter.HttpClientHelper.handle(HttpClientHelper.java:111)
03-12 21:50:44.620 7027-7027/com.example.marian.digimusicstream W/System.err﹕ 位于org.restlet.Client.handle(Client.java:180)
03-12 21:50:44.620 7027-7027/com.example.marian.digimusicstream W/System.err﹕ 位于org.restlet.resource.ClientResource.handle(ClientResource.java:1136)
03-12 21:50:44.621 7027-7027/com.example.marian.digimusicstream W/System.err﹕ 位于org.restlet.resource.ClientResource.handleOutbound(ClientResource.java:1225)
03-12 21:50:44.621 7027-7027/com.example.marian.digimusicstream W/System.err﹕ 位于org.restlet.resource.ClientResource.handle(ClientResource.java:1068)
03-12 21:50:44.621 7027-7027/com.example.marian.digimusicstream W/System.err﹕ 位于org.restlet.resource.ClientResource.handle(ClientResource.java:1044)
03-12 21:50:44.621 7027-7027/com.example.marian.digimusicstream W/System.err﹕ 位于org.restlet.resource.ClientResource.handle(ClientResource.java:950)
03-12 21:50:44.621 7027-7027/com.example.marian.digimusicstream W/System.err﹕ 位于org.restlet.resource.ClientResource.get(ClientResource.java:658)
03-12 21:50:44.621 7027-7027/com.example.marian.digimusicstream W/System.err﹕ 位于net.koofr.api.v2.StorageApi.authenticate(StorageApi.java:150)
03-12 21:50:44.621 7027-7027/com.example.marian.digimusicstream W/System.err﹕ 位于net.koofr.api.v2.DefaultClientFactory.create(DefaultClientFactory.java:66)
03-12 21:50:44.621 7027-7027/com.example.marian.digimusicstream W/System.err﹕ 位于com.example.marian.digimusicstream.LoginActivity$1.onClick(LoginActivity.java:51)
03-12 21:50:44.621 7027-7027/com.example.marian.digimusicstream W/System.err﹕ 在android.view.view.performClick上(view.java:4763)
03-12 21:50:44.621 7027-7027/com.example.marian.digimusicstream W/System.err﹕ 在android.view.view$PerformClick.run(view.java:19821)
03-12 21:50:44.621 7027-7027/com.example.marian.digimusicstream W/System.err﹕ 位于android.os.Handler.handleCallback(Handler.java:739)
03-12 21:50:44.621 7027-7027/com.example.marian.digimusicstream W/System.err﹕ 位于android.os.Handler.dispatchMessage(Handler.java:95)
03-12 21:50:44.621 7027-7027/com.example.marian.digimusicstream W/System.err﹕ 位于android.os.Looper.loop(Looper.java:135)
03-12 21:50:44.621 7027-7027/com.example.marian.digimusicstream W/System.err﹕ 位于android.app.ActivityThread.main(ActivityThread.java:5274)
03-12 21:50:44.621 7027-7027/com.example.marian.digimusicstream W/System.err﹕ 位于java.lang.reflect.Method.invoke(本机方法)
03-12 21:50:44.621 7027-7027/com.example.marian.digimusicstream W/System.err﹕ 位于java.lang.reflect.Method.invoke(Method.java:372)
03-12 21:50:44.621 7027-7027/com.example.marian.digimusicstream W/System.err﹕ 在com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:909)上
03-12 21:50:44.621 7027-7027/com.example.marian.digimusicstream W/System.err﹕ 位于com.android.internal.os.ZygoteInit.main(ZygoteInit.java:704)
03-12 21:50:44.622 7027-7027/com.example.marian.digimusicstream W/System.err﹕ 检测到可恢复错误(1002),并在2000毫秒内再次尝试。
如果有人有任何小想法,我会很感激。多谢各位

android.os.NetworkOnMainThreadException
D
android.os.NetworkOnMainThreadException