UDP در اندروید

سلام دوستان
من یه برنامه با java در eclips برای ارسال اطلاعات با پروتوکل udp نوشتم که به یه مشکل بزرگ برخوردم و اونم اینه که ارسال فقط به رنج ip از 224.0.0.0 تا 239.0.0.0 انجام میشه و من میخوام به یک ip توی رنج 192.168.0.0. تا 192.168.255.255 انجام بشه . کسی میدونه مشکل از کجاست. من توی java تازه کارم یک هفته ست درگیرم .
البته توی کامپیوتر با نرم افزار wireshark به ای پی ها نگاه میکنم
اینم برنامه م


public class Main extends Activity

{
byte a;
int b;
class SocketListener implements Runnable
{
String str;

public void run()
{

DatagramSocket socket;
DatagramPacket packet;
byte[] buf = new byte[256];
System.out.println ("Thread running");
try
{
socket = new DatagramSocket (6000);
while (true)
{
final TextView t = (TextView)findViewById(R.id.textView1);
packet = new DatagramPacket (buf, buf.length);
socket.receive (packet);
System.out.println ("Received packet");
String s = new String (packet.getData());
CharSequence cs = t.getText ();
str = cs + "
" + s;
t.post(new Runnable()
{
public void run()
{
t.setText(str);
}
}
);
}
}
catch (IOException e)
{
Log.e(getClass().getName(), e.getMessage());
}

}

}
@Override
protected void onCreate(Bundle savedInstanceState)
{
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
final TextView tv = (TextView)findViewById(R.id.textView1);
tv.setMovementMethod(new ScrollingMovementMethod());
Button send1 = (Button)findViewById(R.id.button1);

ConnectivityManager cm = (ConnectivityManager)getSystemService(Context.CONN ECTIVITY_SERVICE);
NetworkInfo ni = cm.getActiveNetworkInfo();
if(ni != null && ni.isConnected()){
Toast.makeText(getApplicationContext(),"Connect wifi",Toast.LENGTH_LONG).show();

}

send1.setOnClickListener(new OnClickListener(){
public void onClick(View v)
{

if (a>0){
a=0;
tv.setText("Count:"+b);
}

final EditText et = (EditText)findViewById(R.id.editText1);
Editable e = et.getText();
String s = e.toString();
try
{

byte[] buf = new byte[256];
buf = s.getBytes ();
InetAddress address = InetAddress.getByName ("192.168.1.100");//("228.168.1.100");
final DatagramSocket socket = new DatagramSocket (5000);
final DatagramPacket packet = new DatagramPacket (buf, buf.length, address, 5000); //4567
new Thread ()
{

public void run ()
{

try
{
System.out.println ("About to send message");


socket.send (packet);
a=1;
b=b+1;
System.out.println ("Sent message");

// Toast.makeText(getApplicationContext(),"Sent message",Toast.LENGTH_LONG).show();
}
catch (IOException e1)
{
// TODO Auto-generated catch block
e1.printStackTrace();
}

socket.close();

}
}.start ();
}
catch (SocketException e1) {}
catch (UnknownHostException e2) {}
}
});

Thread t = new Thread (new SocketListener ());
t.start();
}

@Override
public boolean onCreateOptionsMenu(Menu menu) {
// Inflate the menu; this adds items to the action bar if it is present.
getMenuInflater().inflate(R.menu.main, menu);
return true;
}


}

UDP در اندروید


خرید بک لینک
کپی رابت محفوظ است اخبار ایران و جهان
قدرت گرفته از niloblog