android开发socket编程之udp发送实例分析_Android

本文实例讲述了android开发socket编程之udp发送实现方法。分享给大家供大家参考。具体分析如下:

需要实现的功能:采用udp下的socket编程,当按下确认键,模拟器发送文本框数据,pc机上的网络调试助手接收

一、环境:

win7 + eclipse + sdk

二、代码:

package test.soket;
//import com.test_button.R;
import java.io.DataOutputStream;
import java.io.IOException;
import java.net.DatagramPacket;
import java.net.DatagramSocket;
import java.net.InetAddress;
import java.net.Socket;
import java.net.SocketException;
import java.net.UnknownHostException;
import android.app.Activity;
import android.os.Bundle;
import android.view.View;
import android.widget.Button;
import android.widget.TextView;
public class test_socket extends Activity {
 public static TextView show;
 public static Button press;
 public static boolean flag;
 private static final int MAX_DATA_PACKET_LENGTH = 40;
 private byte[] buffer = new byte[MAX_DATA_PACKET_LENGTH];
 private DatagramPacket dataPacket;
 private DatagramSocket udpSocket;
 /** Called when the activity is first created. */
 @Override
 public void onCreate(Bundle savedInstanceState) {
  super.onCreate(savedInstanceState);
  setContentView(R.layout.main);
  //开辟控件空间
  show = (TextView)findViewById(R.id.editText1);
  press = (Button)findViewById(R.id.button1);
  flag = false;
  //soket_send thread = new soket_send();
  //thread.init();
  //thread.start();
  try
  {
   udpSocket = new DatagramSocket(5554);
  }
  catch (SocketException e)
  {
   // TODO Auto-generated catch block
   e.printStackTrace();
  }
  dataPacket = new DatagramPacket(buffer, MAX_DATA_PACKET_LENGTH);
  String str = "hello,jdh"; //这是要传输的数据
  byte out [] = str.getBytes(); //把传输内容分解成字节
  dataPacket.setData(out);
  dataPacket.setLength(out.length);
  dataPacket.setPort(5554);
  try
  {
   InetAddress broadcastAddr = InetAddress.getByName("192.168.0.248");
   dataPacket.setAddress(broadcastAddr);
   udpSocket.send(dataPacket);
  }
  catch (IOException e)
  {
   // TODO Auto-generated catch block
   e.printStackTrace();
  } 

  press.setOnClickListener(new Button.OnClickListener()
  {
   @Override
   public void onClick(View v)
   {
    flag = true;
    /*
    String str = "hello,jdh"; //这是要传输的数据
    byte out [] = str.getBytes(); //把传输内容分解成字节
    dataPacket.setData(out);
    dataPacket.setLength(out.length);
    */
    //获得输入框文本
    CharSequence str =test_socket.show.getText();
    byte out[] = str.toString().getBytes();
    dataPacket.setData(out);
    dataPacket.setLength(out.length);
    try
    {
     InetAddress broadcastAddr = InetAddress.getByName("192.168.0.248");
     dataPacket.setAddress(broadcastAddr);
     udpSocket.send(dataPacket);
    }
    catch (IOException e)
    {
     // TODO Auto-generated catch block
     e.printStackTrace();
    }
   }
  });
 }
}

界面如下:

注意:在模拟器IP为本机IP,端口为模拟器名称

希望本文所述对大家的Android程序设计有所帮助。

以上是小编为您精心准备的的内容,在的博客、问答、公众号、人物、课程等栏目也有的相关内容,欢迎继续使用右上角搜索按钮进行搜索android
, socket编程
udp发送
qt udp socket编程、linux udp socket编程、socket udp编程、java udp socket编程、mfc udp socket编程,以便于您获取更多的相关知识。

时间: 2025-01-06 19:48:20

android开发socket编程之udp发送实例分析_Android的相关文章

android开发socket编程之udp发送实例分析

本文实例讲述了android开发socket编程之udp发送实现方法.分享给大家供大家参考.具体分析如下: 需要实现的功能:采用udp下的socket编程,当按下确认键,模拟器发送文本框数据,pc机上的网络调试助手接收 一.环境: win7 + eclipse + sdk 二.代码: package test.soket; //import com.test_button.R; import java.io.DataOutputStream; import java.io.IOException

Android编程之MD5加密算法实例分析_Android

本文实例分析了Android编程之MD5加密算法.分享给大家供大家参考,具体如下: Android MD5加密算与J2SE平台一模一样,因为Android 平台支持 java.security.MessageDigest这个包.实际上与J2SE平台一模一样. 算法签名: 复制代码 代码如下: String getMD5(String val) throws NoSuchAlgorithmException 输入一个String(需要加密的文本),得到一个加密输出String(加密后的文本) pa

Android编程之ListPreference用法实例分析_Android

本文实例讲述了Android编程之ListPreference用法.分享给大家供大家参考,具体如下: 先展示一下效果图,如下所示: 项目代码如下: package com.my.listpreference; import android.os.Bundle; import android.preference.ListPreference; import android.preference.Preference; import android.preference.Preference.On

Android编程之MD5加密算法实例分析

本文实例分析了Android编程之MD5加密算法.分享给大家供大家参考,具体如下: Android MD5加密算与J2SE平台一模一样,因为Android 平台支持 java.security.MessageDigest这个包.实际上与J2SE平台一模一样. 算法签名: 复制代码 代码如下:String getMD5(String val) throws NoSuchAlgorithmException 输入一个String(需要加密的文本),得到一个加密输出String(加密后的文本) pac

Android开发中ImageView的scaletype属性用法分析_Android

本文实例讲述了Android开发中ImageView的scaletype属性用法.分享给大家供大家参考,具体如下: ImageView的属性android:scaleType,即 ImageView.setScaleType(ImageView.ScaleType).android:scaleType是控制图片如何 resized/moved来匹对ImageView的size.ImageView.ScaleType / android:scaleType值的意义区别: CENTER /cente

Android开发中setContentView和inflate的区别分析_Android

本文实例讲述了Android开发中setContentView和inflate的区别.分享给大家供大家参考,具体如下: 一般用LayoutInflater做一件事:inflate inflate这个方法总共有四种形式(见下面),目的都是把xml表述的layout转化为View对象. 其中有一个比较常用,View inflate(int resource, ViewGroup root),另三个,其实目的和这个差不多. int resource,也就是resource/layout文件在R文件中对

Android判断服务是否运行及定位问题实例分析_Android

本文实例讲述了Android判断服务是否运行及定位问题.分享给大家供大家参考.具体如下: /** * 判断服务是否正在运行 * * @param context * @param className 判断的服务名字:包名+类名 * @return true在运行 false 不在运行 */ public static boolean isServiceRunning(Context context, String className) { boolean isRunning = false; A

Android开发中Intent传递对象的方法分析_Android

本文实例分析了Android开发中Intent传递对象的方法.分享给大家供大家参考,具体如下: 方法一: 利用方法:public Intent putExtra (String name, Parcelable value)传递一个Parceable的参数,此方法的参数被序列化到内存. 利用方法:public Intent putExtra (String name, Serializable value)传递一个实现了序列化接口类的对象,此方法的实参被序列化到磁盘. 方法二: 把数据存放到应用

Android之日期及时间选择对话框用法实例分析_Android

本文实例讲述了Android之日期及时间选择对话框用法.分享给大家供大家参考.具体如下: 清单文件: <?xml version="1.0" encoding="utf-8"?> <manifest xmlns:android="http://schemas.android.com/apk/res/android" package="com.ljq.dialog" android:versionCode=&q