无法从设备应用程序连接到服务器 [英] unable connect to server from application on device

查看:221
本文介绍了无法从设备应用程序连接到服务器的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我有问题,测试我的应用程序在设备上。
我已经成功地从我的设备打开浏览器中的本地主机,但是当我输入我的IP连接我与Web服务应用程序没有奏效。
我总是得到不幸的是,[我的应用程序名称]已停止的消息。
谁知道这个问题,请大家帮帮我。我真的需要帮助解决这个问题。非常感谢你。

logcat的 - 我把它从USB调试的设备

 十一月6日至10号:31:15.551:D / dalvikvm(14590):晚启用CheckJNI
十一月6日至10日:31:1580.9:D / TextLayoutCache(14590):使用调试级别:0  - 调试启用:0
十一月6日至10日:31:15.902:D / libEGL(14590):加载/vendor/lib/egl/libEGL_POWERVR_SGX540_120.so
十一月6日至10日:31:15.910:D / libEGL(14590):加载/vendor/lib/egl/libGLESv1_CM_POWERVR_SGX540_120.so
十一月6日至10日:31:15.910:D / libEGL(14590):加载/vendor/lib/egl/libGLESv2_POWERVR_SGX540_120.so
十一月6日至10日:31:16.160:D / OpenGLRenderer(14590):启用调试模式0
十一月6日至10日:31:19.770:D / OpenGLRenderer(14590):刷新缓存(模式0)
十一月6日至10日:31:22.309:D / OpenGLRenderer(14590):刷新缓存(模式0)
十一月6日至10日:31:30.848:D / TryLoginCheck(14590):在这里
十一月6日至10日:31:30.848:我/的System.out(14590):UserNametes
十一月6日至10日:31:30.848:我/的System.out(14590):passwordTes12345 *
十一月6日至10日:31:30.848:D /参数(14590):用户名= TES和放大器;密码= Tes12345 *
十一月6日至10日:31:30.863:D / AndroidRuntime(14590):关闭虚拟机
十一月6日至10日:31:30.863:W / dalvikvm(14590):主题ID = 1:螺纹退出与未捕获的异常(组= 0x40bd31f8)
十一月6日至10日:31:30.863:E / AndroidRuntime(14590):致命异常:主要
十一月6日至10日:31:30.863:E / AndroidRuntime(14590):android.os.NetworkOnMainThreadException
十一月6日至10日:31:30.863:E / AndroidRuntime(14590):在android.os.StrictMode $ AndroidBlockGuardPolicy.onNetwork(StrictMode.java:1099)
十一月6日至10日:31:30.863:E / AndroidRuntime(14590):在libcore.io.BlockGuardOs.connect(BlockGuardOs.java:84)
十一月6日至10日:31:30.863:E / AndroidRuntime(14590):在libcore.io.IoBridge.connectErrno(IoBridge.java:127)
十一月6日至10日:31:30.863:E / AndroidRuntime(14590):在libcore.io.IoBridge.connect(IoBridge.java:112)
十一月6日至10日:31:30.863:E / AndroidRuntime(14590):在java.net.PlainSocketImpl.connect(PlainSocketImpl.java:192)
十一月6日至10日:31:30.863:E / AndroidRuntime(14590):在java.net.PlainSocketImpl.connect(PlainSocketImpl.java:459)
十一月6日至10日:31:30.863:E / AndroidRuntime(14590):在java.net.Socket.connect(Socket.java:842)
。11月6日至10号:31:30.863:E / AndroidRuntime(14590):在libcore.net.http.HttpConnection< INIT>(HttpConnection.java:77)
。11月6日至10号:31:30.863:E / AndroidRuntime(14590):在libcore.net.http.HttpConnection< INIT>(HttpConnection.java:50)
十一月6日至10日:31:30.863:E / AndroidRuntime(14590):在libcore.net.http.HttpConnection $ Address.connect(HttpConnection.java:351)
十一月6日至10日:31:30.863:E / AndroidRuntime(14590):在libcore.net.http.HttpConnectionPool.get(HttpConnectionPool.java:86)
十一月6日至10日:31:30.863:E / AndroidRuntime(14590):在libcore.net.http.HttpConnection.connect(HttpConnection.java:128)
十一月6日至10日:31:30.863:E / AndroidRuntime(14590):在libcore.net.http.HttpEngine.openSocketConnection(HttpEngine.java:308)
十一月6日至10日:31:30.863:E / AndroidRuntime(14590):在libcore.net.http.HttpEngine.connect(HttpEngine.java:303)
十一月6日至10日:31:30.863:E / AndroidRuntime(14590):在libcore.net.http.HttpEngine.sendSocketRequest(HttpEngine.java:282)
十一月6日至10日:31:30.863:E / AndroidRuntime(14590):在libcore.net.http.HttpEngine.sendRequest(HttpEngine.java:232)
十一月6日至10日:31:30.863:E / AndroidRuntime(14590):在libcore.net.http.HttpURLConnectionImpl.connect(HttpURLConnectionImpl.java:80)
十一月6日至10日:31:30.863:E / AndroidRuntime(14590):在libcore.net.http.HttpURLConnectionImpl.getOutputStream(HttpURLConnectionImpl.java:188)
十一月6日至10日:31:30.863:E / AndroidRuntime(14590):在com.karismaelearning.Login.tryLogin(Login.java:128)
十一月6日至10日:31:30.863:E / AndroidRuntime(14590):在com.karismaelearning.Login $ 3.onClick(Login.java:73)
十一月6日至10日:31:30.863:E / AndroidRuntime(14590):在android.view.View.performClick(View.java:3558)
十一月6日至10日:31:30.863:E / AndroidRuntime(14590):在android.view.View $ PerformClick.run(View.java:14157)
十一月6日至10日:31:30.863:E / AndroidRuntime(14590):在android.os.Handler.handleCallback(Handler.java:605)
十一月6日至10日:31:30.863:E / AndroidRuntime(14590):在android.os.Handler.dispatchMessage(Handler.java:92)
十一月6日至10日:31:30.863:E / AndroidRuntime(14590):在android.os.Looper.loop(Looper.java:137)
十一月6日至10日:31:30.863:E / AndroidRuntime(14590):在android.app.ActivityThread.main(ActivityThread.java:4514)
十一月6日至10日:31:30.863:E / AndroidRuntime(14590):在java.lang.reflect.Method.invokeNative(本机方法)
十一月6日至10日:31:30.863:E / AndroidRuntime(14590):在java.lang.reflect.Method.invoke(Method.java:511)
十一月6日至10日:31:30.863:E / AndroidRuntime(14590):在com.android.internal.os.ZygoteInit $ MethodAndArgsCaller.run(ZygoteInit.java:790)
十一月6日至10日:31:30.863:E / AndroidRuntime(14590):在com.android.internal.os.ZygoteInit.main(ZygoteInit.java:557)
十一月6日至10日:31:30.863:E / AndroidRuntime(14590):在dalvik.system.NativeStart.main(本机方法)
十一月6日至10日:31:30.918:D / dalvikvm(14590):GC_CONCURRENT释放237K,6%免费6863K / 7239K,暂停2MS + 2ms的
 

解决方案

你得到 android.os.NetworkOnMainThreadException

例外,当应用程序试图在其主线程进行网络操作时所引发。

这是只抛出针对蜂窝SDK或更高版本的应用程序。针对早期SDK版本的应用程序可以做网络上的主要事件循环线程,但它严重阻碍。

做你的code 这样的AsyncTask

I have problem with testing my application on device.
I already successfully open the localhost in browser from my device, but when i enter my ip to connect my application with web service it didn't work.
I always get the "unfortunately, [my apps name] has stopped" message.
Anyone who knows about this problem, please help me. I really need help to solve this. thank you very much

logcat - i get it from usb debug on device

06-10 11:31:15.551: D/dalvikvm(14590): Late-enabling CheckJNI
06-10 11:31:15.809: D/TextLayoutCache(14590): Using debug level: 0 - Debug Enabled: 0
06-10 11:31:15.902: D/libEGL(14590): loaded /vendor/lib/egl/libEGL_POWERVR_SGX540_120.so
06-10 11:31:15.910: D/libEGL(14590): loaded /vendor/lib/egl/libGLESv1_CM_POWERVR_SGX540_120.so
06-10 11:31:15.910: D/libEGL(14590): loaded /vendor/lib/egl/libGLESv2_POWERVR_SGX540_120.so
06-10 11:31:16.160: D/OpenGLRenderer(14590): Enabling debug mode 0
06-10 11:31:19.770: D/OpenGLRenderer(14590): Flushing caches (mode 0)
06-10 11:31:22.309: D/OpenGLRenderer(14590): Flushing caches (mode 0)
06-10 11:31:30.848: D/TryLoginCheck(14590): Here
06-10 11:31:30.848: I/System.out(14590): UserNametes
06-10 11:31:30.848: I/System.out(14590): passwordTes12345*
06-10 11:31:30.848: D/Parameters(14590): username=tes&password=Tes12345*
06-10 11:31:30.863: D/AndroidRuntime(14590): Shutting down VM
06-10 11:31:30.863: W/dalvikvm(14590): threadid=1: thread exiting with uncaught exception (group=0x40bd31f8)
06-10 11:31:30.863: E/AndroidRuntime(14590): FATAL EXCEPTION: main
06-10 11:31:30.863: E/AndroidRuntime(14590): android.os.NetworkOnMainThreadException
06-10 11:31:30.863: E/AndroidRuntime(14590):    at android.os.StrictMode$AndroidBlockGuardPolicy.onNetwork(StrictMode.java:1099)
06-10 11:31:30.863: E/AndroidRuntime(14590):    at libcore.io.BlockGuardOs.connect(BlockGuardOs.java:84)
06-10 11:31:30.863: E/AndroidRuntime(14590):    at libcore.io.IoBridge.connectErrno(IoBridge.java:127)
06-10 11:31:30.863: E/AndroidRuntime(14590):    at libcore.io.IoBridge.connect(IoBridge.java:112)
06-10 11:31:30.863: E/AndroidRuntime(14590):    at java.net.PlainSocketImpl.connect(PlainSocketImpl.java:192)
06-10 11:31:30.863: E/AndroidRuntime(14590):    at java.net.PlainSocketImpl.connect(PlainSocketImpl.java:459)
06-10 11:31:30.863: E/AndroidRuntime(14590):    at java.net.Socket.connect(Socket.java:842)
06-10 11:31:30.863: E/AndroidRuntime(14590):    at libcore.net.http.HttpConnection.<init>(HttpConnection.java:77)
06-10 11:31:30.863: E/AndroidRuntime(14590):    at libcore.net.http.HttpConnection.<init>(HttpConnection.java:50)
06-10 11:31:30.863: E/AndroidRuntime(14590):    at libcore.net.http.HttpConnection$Address.connect(HttpConnection.java:351)
06-10 11:31:30.863: E/AndroidRuntime(14590):    at libcore.net.http.HttpConnectionPool.get(HttpConnectionPool.java:86)
06-10 11:31:30.863: E/AndroidRuntime(14590):    at libcore.net.http.HttpConnection.connect(HttpConnection.java:128)
06-10 11:31:30.863: E/AndroidRuntime(14590):    at libcore.net.http.HttpEngine.openSocketConnection(HttpEngine.java:308)
06-10 11:31:30.863: E/AndroidRuntime(14590):    at libcore.net.http.HttpEngine.connect(HttpEngine.java:303)
06-10 11:31:30.863: E/AndroidRuntime(14590):    at libcore.net.http.HttpEngine.sendSocketRequest(HttpEngine.java:282)
06-10 11:31:30.863: E/AndroidRuntime(14590):    at libcore.net.http.HttpEngine.sendRequest(HttpEngine.java:232)
06-10 11:31:30.863: E/AndroidRuntime(14590):    at libcore.net.http.HttpURLConnectionImpl.connect(HttpURLConnectionImpl.java:80)
06-10 11:31:30.863: E/AndroidRuntime(14590):    at libcore.net.http.HttpURLConnectionImpl.getOutputStream(HttpURLConnectionImpl.java:188)
06-10 11:31:30.863: E/AndroidRuntime(14590):    at com.karismaelearning.Login.tryLogin(Login.java:128)
06-10 11:31:30.863: E/AndroidRuntime(14590):    at com.karismaelearning.Login$3.onClick(Login.java:73)
06-10 11:31:30.863: E/AndroidRuntime(14590):    at android.view.View.performClick(View.java:3558)
06-10 11:31:30.863: E/AndroidRuntime(14590):    at android.view.View$PerformClick.run(View.java:14157)
06-10 11:31:30.863: E/AndroidRuntime(14590):    at android.os.Handler.handleCallback(Handler.java:605)
06-10 11:31:30.863: E/AndroidRuntime(14590):    at android.os.Handler.dispatchMessage(Handler.java:92)
06-10 11:31:30.863: E/AndroidRuntime(14590):    at android.os.Looper.loop(Looper.java:137)
06-10 11:31:30.863: E/AndroidRuntime(14590):    at android.app.ActivityThread.main(ActivityThread.java:4514)
06-10 11:31:30.863: E/AndroidRuntime(14590):    at java.lang.reflect.Method.invokeNative(Native Method)
06-10 11:31:30.863: E/AndroidRuntime(14590):    at java.lang.reflect.Method.invoke(Method.java:511)
06-10 11:31:30.863: E/AndroidRuntime(14590):    at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:790)
06-10 11:31:30.863: E/AndroidRuntime(14590):    at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:557)
06-10 11:31:30.863: E/AndroidRuntime(14590):    at dalvik.system.NativeStart.main(Native Method)
06-10 11:31:30.918: D/dalvikvm(14590): GC_CONCURRENT freed 237K, 6% free 6863K/7239K, paused 2ms+2ms

解决方案

you are getting android.os.NetworkOnMainThreadException :

The exception that is thrown when an application attempts to perform a networking operation on its main thread.

This is only thrown for applications targeting the Honeycomb SDK or higher. Applications targeting earlier SDK versions are allowed to do networking on their main event loop threads, but it's heavily discouraged.

do your code this way in side AsyncTask

这篇关于无法从设备应用程序连接到服务器的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆