I want to send an UDP packet form my mobile device to my computer, but when I try to initiate a DatagramSocket or use the InetAddress.getByName() method the compiler shows the folowing errors:
DatagramSocket: "Unhandeld Exception: java.net.UnknowHostException"
InetAddress: "Unhandeld Exception: java.net.SocketException"
I also added a few user-permission tags in the AndroidMafinest.xml file, but without result.
PacketService.java
package mw.mobilepccommunication;
import java.net.DatagramPacket;
import java.net.DatagramSocket;
import java.net.InetAddress;
public class PacketService {
private String mIP;
private int mPort;
public PacketService (String aIP, int aPort)
{
mIP = aIP;
mPort = aPort;
}
public void lockHandler ()
{
String lMessage = "TEST";
InetAddress lLocal = InetAddress.getByName(mIP); //<--UnknownHostException
int lMessageLength = lMessage.length();
byte [] lBuffer = lMessage.getBytes();
DatagramSocket lSocket = new DatagramSocket(mPort); // <--SocketException
DatagramPacket lPacket = new DatagramPacket(lBuffer, lMessageLength, lLocal, mPort);
}
}
AndroidManifest.xml
<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
package="mw.mobilepccommunication" >
<uses-permission android:name="android.permission.INTERNET" />
<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" />
<uses-permission android:name="android.permission.READ_PHONE_STATE" />
<application
android:allowBackup="true"
android:icon="@mipmap/ic_launcher"
android:label="@string/app_name"
android:theme="@style/AppTheme" >
<activity
android:name=".MainActivity"
android:label="@string/app_name" >
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
</activity>
</application>
</manifest>