Caused by: android.os.NetworkOnMainThreadException
06-07 11:49:05.354: E/AndroidRuntime(4506): java.lang.RuntimeException: Unable to create service com.winso.interactive.socket.SocketService: android.os.NetworkOnMainThreadException
06-07 11:49:05.354: E/AndroidRuntime(4506): at android.app.ActivityThread.handleCreateService(ActivityThread.java:2733)
06-07 11:49:05.354: E/AndroidRuntime(4506): at android.app.ActivityThread.access$1600(ActivityThread.java:168)
06-07 11:49:05.354: E/AndroidRuntime(4506): at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1458)
06-07 11:49:05.354: E/AndroidRuntime(4506): at android.os.Handler.dispatchMessage(Handler.java:107)
06-07 11:49:05.354: E/AndroidRuntime(4506): at android.os.Looper.loop(Looper.java:194)
06-07 11:49:05.354: E/AndroidRuntime(4506): at android.app.ActivityThread.main(ActivityThread.java:5398)
06-07 11:49:05.354: E/AndroidRuntime(4506): at java.lang.reflect.Method.invokeNative(Native Method)
06-07 11:49:05.354: E/AndroidRuntime(4506): at java.lang.reflect.Method.invoke(Method.java:525)
06-07 11:49:05.354: E/AndroidRuntime(4506): at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:836)
06-07 11:49:05.354: E/AndroidRuntime(4506): at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:603)
06-07 11:49:05.354: E/AndroidRuntime(4506): at dalvik.system.NativeStart.main(Native Method)
06-07 11:49:05.354: E/AndroidRuntime(4506): Caused by: android.os.NetworkOnMainThreadException
06-07 11:49:05.354: E/AndroidRuntime(4506): at android.os.StrictMode$AndroidBlockGuardPolicy.onNetwork(StrictMode.java:1128)
06-07 11:49:05.354: E/AndroidRuntime(4506): at libcore.io.BlockGuardOs.connect(BlockGuardOs.java:84)
06-07 11:49:05.354: E/AndroidRuntime(4506): at libcore.io.IoBridge.connectErrno(IoBridge.java:159)
06-07 11:49:05.354: E/AndroidRuntime(4506): at libcore.io.IoBridge.connect(IoBridge.java:112)
06-07 11:49:05.354: E/AndroidRuntime(4506): at java.net.PlainSocketImpl.connect(PlainSocketImpl.java:192)
06-07 11:49:05.354: E/AndroidRuntime(4506): at java.net.PlainSocketImpl.connect(PlainSocketImpl.java:459)
06-07 11:49:05.354: E/AndroidRuntime(4506): at java.net.Socket.connect(Socket.java:860)
06-07 11:49:05.354: E/AndroidRuntime(4506): at com.winso.interactive.socket.SocketService.onCreate(SocketService.java:37)
06-07 11:49:05.354: E/AndroidRuntime(4506): at android.app.ActivityThread.handleCreateService(ActivityThread.java:2723)
06-07 11:49:05.354: E/AndroidRuntime(4506): ... 10 more
造成上面问题的原因是,我在onCreate()中写了耗时操作;
解决办法就是把耗时操作放到线程中去执行。