Страница 1 из 1

Соединение с PLC LibNoDave

Добавлено: 31 окт 2013, 17:13
Nazar
Доброго всем времени суток, Господа!
На Андройде буквально пару дней, так, что опыта нет совсем. И так к сути:
Мне нужно подключиться к PLC(S7-300) по Ethernet. Использую LibNoDave(Java). При подключении вываливается со следующими ошибками:

10-31 11:37:48.378: E/SensorManager(31926): thread start
10-31 11:38:20.953: E/AndroidRuntime(31926): FATAL EXCEPTION: main
10-31 11:38:20.953: E/AndroidRuntime(31926): java.lang.IllegalStateException: Could not execute method of the activity
10-31 11:38:20.953: E/AndroidRuntime(31926): at android.view.View$1.onClick(View.java:3704)
10-31 11:38:20.953: E/AndroidRuntime(31926): at android.view.View.performClick(View.java:4232)
10-31 11:38:20.953: E/AndroidRuntime(31926): at android.view.View$PerformClick.run(View.java:17298)
10-31 11:38:20.953: E/AndroidRuntime(31926): at android.os.Handler.handleCallback(Handler.java:615)
10-31 11:38:20.953: E/AndroidRuntime(31926): at android.os.Handler.dispatchMessage(Handler.java:92)
10-31 11:38:20.953: E/AndroidRuntime(31926): at android.os.Looper.loop(Looper.java:137)
10-31 11:38:20.953: E/AndroidRuntime(31926): at android.app.ActivityThread.main(ActivityThread.java:4921)
10-31 11:38:20.953: E/AndroidRuntime(31926): at java.lang.reflect.Method.invokeNative(Native Method)
10-31 11:38:20.953: E/AndroidRuntime(31926): at java.lang.reflect.Method.invoke(Method.java:511)
10-31 11:38:20.953: E/AndroidRuntime(31926): at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:1027)
10-31 11:38:20.953: E/AndroidRuntime(31926): at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:794)
10-31 11:38:20.953: E/AndroidRuntime(31926): at dalvik.system.NativeStart.main(Native Method)
10-31 11:38:20.953: E/AndroidRuntime(31926): Caused by: java.lang.reflect.InvocationTargetException
10-31 11:38:20.953: E/AndroidRuntime(31926): at java.lang.reflect.Method.invokeNative(Native Method)
10-31 11:38:20.953: E/AndroidRuntime(31926): at java.lang.reflect.Method.invoke(Method.java:511)
10-31 11:38:20.953: E/AndroidRuntime(31926): at android.view.View$1.onClick(View.java:3699)
10-31 11:38:20.953: E/AndroidRuntime(31926): ... 11 more
10-31 11:38:20.953: E/AndroidRuntime(31926): Caused by: android.os.NetworkOnMainThreadException
10-31 11:38:20.953: E/AndroidRuntime(31926): at android.os.StrictMode$AndroidBlockGuardPolicy.onNetwork(StrictMode.java:1118)
10-31 11:38:20.953: E/AndroidRuntime(31926): at libcore.io.BlockGuardOs.connect(BlockGuardOs.java:84)
10-31 11:38:20.953: E/AndroidRuntime(31926): at libcore.io.IoBridge.connectErrno(IoBridge.java:127)
10-31 11:38:20.953: E/AndroidRuntime(31926): at libcore.io.IoBridge.connect(IoBridge.java:112)
10-31 11:38:20.953: E/AndroidRuntime(31926): at java.net.PlainSocketImpl.connect(PlainSocketImpl.java:192)
10-31 11:38:20.953: E/AndroidRuntime(31926): at java.net.PlainSocketImpl.connect(PlainSocketImpl.java:172)
10-31 11:38:20.953: E/AndroidRuntime(31926): at java.net.Socket.startupSocket(Socket.java:566)
10-31 11:38:20.953: E/AndroidRuntime(31926): at java.net.Socket.tryAllAddresses(Socket.java:127)
10-31 11:38:20.953: E/AndroidRuntime(31926): at java.net.Socket.<init>(Socket.java:177)
10-31 11:38:20.953: E/AndroidRuntime(31926): at java.net.Socket.<init>(Socket.java:149)
10-31 11:38:20.953: E/AndroidRuntime(31926): at nodave.DataIsoTCP.<init>(DataIsoTCP.java:29)
10-31 11:38:20.953: E/AndroidRuntime(31926): at nodave.DataIsoTCP.ConnectIsoTcp(DataIsoTCP.java:90)
10-31 11:38:20.953: E/AndroidRuntime(31926): at com.example.s7nodavetest.MainActivity.makeConnection(MainActivity.java:45)

Разъясните, пожалуйста, в чем может быть ошибка? По логу не совсем понятно, ругается буквально на всё. Если нужно могу код выложить. Может есть какие мысли. Заранее благодарю!

Re: Соединение с PLC LibNoDave

Добавлено: 31 окт 2013, 18:04
trew
Делайте двойной счелчок по каждой строчке лога, сверху вниз перемещаясь.
На одной из строк - система перекинет вас в то место кода, где она обрушилась.
Возможно, на этой строке
at android.os.Handler.dispatchMessage(Handler.java:92)

Re: Соединение с PLC LibNoDave

Добавлено: 31 окт 2013, 18:35
rezak90
Здесьс к Ванге ходить не нужно что бы понять что это
Caused by: android.os.NetworkOnMainThreadException
Вы обращаетесь с сетью в основном потоке, а нужно в отдельном.

Re: Соединение с PLC LibNoDave

Добавлено: 31 окт 2013, 21:38
Nazar
Спасибо за ответ!!! Буду использовать потоки и хендлы.