Note that there are some explanatory texts on larger screens.

plurals
  1. POHow to make an udp connection in android
    primarykey
    data
    text
    <p>I'm trying to make a connection between my <code>galaxy tab</code> and my <code>laptop</code>. So I'm trying to run server activity on my laptop and client activity on my tab, but it doesn't work. Here is the server and client code. Where is the mistake?</p> <p><strong>SERVER :</strong></p> <pre><code>public class MainActivity extends Activity { @Override public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); TextView txt = (TextView)findViewById(R.id.textView1); int port = 12345; byte [] message = new byte [1500]; DatagramPacket p = new DatagramPacket (message,message.length); try { InetAddress serveraddr = InetAddress.getByName("192.168.1.116"); DatagramSocket s = new DatagramSocket (port,serveraddr); while (true){ s.receive(p); String text = new String (message,0,p.getLength()); txt.setText(text); } } catch (SocketException e) { // TODO Auto-generated catch block e.printStackTrace(); } catch (IOException e) { // TODO Auto-generated catch block e.printStackTrace(); } } </code></pre> <p><strong>CLIENT :</strong></p> <pre><code>public class MainActivity extends Activity { @Override public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); final EditText edt = (EditText)findViewById(R.id.editText1); Button btn = (Button)findViewById(R.id.button1); btn.setOnClickListener(new View.OnClickListener() { public void onClick(View arg0) { String msg = edt.getText().toString(); int port = 12345; try { DatagramSocket s = new DatagramSocket(); InetAddress local = InetAddress.getByName("192.168.1.116"); int msg_lenght = msg.length(); byte []message = msg.getBytes(); DatagramPacket p = new DatagramPacket(message,msg_lenght,local,port); s.send(p); } catch (SocketException e) { e.printStackTrace(); } catch (UnknownHostException e) { e.printStackTrace(); } catch (IOException e) { e.printStackTrace(); } } }); } </code></pre> <p>Here is the <strong>log</strong> : </p> <pre><code>09-17 23:49:55.190: D/dalvikvm(5892): Late-enabling CheckJNI 09-17 23:49:55.690: D/CLIPBOARD(5892): Hide Clipboard dialog at Starting input: finished by someone else... ! 09-17 23:49:59.590: D/AndroidRuntime(5892): Shutting down VM 09-17 23:49:59.590: W/dalvikvm(5892): threadid=1: thread exiting with uncaught exception (group=0x40c4f1f8) 09-17 23:49:59.590: E/AndroidRuntime(5892): FATAL EXCEPTION: main 09-17 23:49:59.590: E/AndroidRuntime(5892): android.os.NetworkOnMainThreadException 09-17 23:49:59.590: E/AndroidRuntime(5892): at android.os.StrictMode$AndroidBlockGuardPolicy.onNetwork(StrictMode.java:1099) 09-17 23:49:59.590: E/AndroidRuntime(5892): at libcore.io.BlockGuardOs.sendto(BlockGuardOs.java:175) 09-17 23:49:59.590: E/AndroidRuntime(5892): at libcore.io.IoBridge.sendto(IoBridge.java:463) 09-17 23:49:59.590: E/AndroidRuntime(5892): at java.net.PlainDatagramSocketImpl.send(PlainDatagramSocketImpl.java:182) 09-17 23:49:59.590: E/AndroidRuntime(5892): at java.net.DatagramSocket.send(DatagramSocket.java:307) 09-17 23:49:59.590: E/AndroidRuntime(5892): at com.example.udpclient.MainActivity$1.onClick(MainActivity.java:36) 09-17 23:49:59.590: E/AndroidRuntime(5892): at android.view.View.performClick(View.java:3620) 09-17 23:49:59.590: E/AndroidRuntime(5892): at android.view.View$PerformClick.run(View.java:14322) 09-17 23:49:59.590: E/AndroidRuntime(5892): at android.os.Handler.handleCallback(Handler.java:605) 09-17 23:49:59.590: E/AndroidRuntime(5892): at android.os.Handler.dispatchMessage(Handler.java:92) 09-17 23:49:59.590: E/AndroidRuntime(5892): at android.os.Looper.loop(Looper.java:137) 09-17 23:49:59.590: E/AndroidRuntime(5892): at android.app.ActivityThread.main(ActivityThread.java:4507) 09-17 23:49:59.590: E/AndroidRuntime(5892): at java.lang.reflect.Method.invokeNative(Native Method) 09-17 23:49:59.590: E/AndroidRuntime(5892): at java.lang.reflect.Method.invoke(Method.java:511) 09-17 23:49:59.590: E/AndroidRuntime(5892): at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:978) 09-17 23:49:59.590: E/AndroidRuntime(5892): at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:745) 09-17 23:49:59.590: E/AndroidRuntime(5892): at dalvik.system.NativeStart.main(Native Method) 09-17 23:50:34.320: I/Process(5892): Sending signal. PID: 5892 SIG: 9 </code></pre>
    singulars
    1. This table or related slice is empty.
    1. This table or related slice is empty.
    plurals
    1. This table or related slice is empty.
 

Querying!

 
Guidance

SQuiL has stopped working due to an internal error.

If you are curious you may find further information in the browser console, which is accessible through the devtools (F12).

Reload