最近在帮PHP那边做一个测试DEMO 需要我给他发送当前手机IP。。。和 写一个在安卓手机上实现的服务端。。。
先说说 查看当前手机连接WIFI后IP是多少的代码
public String getIpAddress(Context context) {
String IpAddress = null;
WifiInfo wifiInfo = getWifiInfo(context);
if (wifiInfo != null) {
IpAddress = intToIpAddress(wifiInfo.getIpAddress());
}
return IpAddress;
}
public String intToIpAddress(long ipInt) {
StringBuffer sb = new StringBuffer();
sb.append(ipInt & 0xFF).append(".");
sb.append((ipInt >> 8) & 0xFF).append(".");
sb.append((ipInt >> 16) & 0xFF).append(".");
sb.append((ipInt >> 24) & 0xFF);
textView.setText("当前我手机IP是---"+sb.toString());
request(sb.toString());
return sb.toString();
}
/**
* 获取WifiInfo
*/
public static WifiInfo getWifiInfo(Context context) {
WifiManager wifiManager = (WifiManager) context.getSystemService(Context.WIFI_SERVICE);
WifiInfo info = null;
if (null != wifiManager) {
info = wifiManager.getConnectionInfo();
}
return info;
}
public void ServerReceviedByTcp() {
// 声明一个ServerSocket对象
ServerSocket serverSocket = null;
try {
// 创建一个ServerSocket对象,并让这个Socket在1989端口监听
serverSocket = new ServerSocket(2345);
// 调用ServerSocket的accept()方法,接受客户端所发送的请求,
// 如果客户端没有发送数据,那么该线程就停滞不继续
while (true) {
Socket socket = serverSocket.accept();
// 从Socket当中得到InputStream对象
InputStream inputStream = socket.getInputStream();
byte buffer[] = new byte[1024 *1000];
int temp = 0;
// 从InputStream当中读取客户端所发送的数据
while ((temp = inputStream.read(buffer)) != -1) {
System.out.println("收到客户端的消息:"+new String(buffer, 0, temp));
}
//
// BufferedWriter writer = new BufferedWriter(new OutputStreamWriter(
// socket.getOutputStream()));
// writer.write("收到消息...\n");
// writer.flush();
// System.out.println("服务端:-->收到消息");
}
//serverSocket.close();
} catch (Exception e) {
e.printStackTrace();
}
}客户端连接
protected void connectServerWithTCPSocket() {
try {// 创建一个Socket对象,并指定服务端的IP及端口号
if(clientSocket != null){
clientSocket.close();
}
clientSocket = new Socket("10.2.69.73", 2345);
boolean isConnected = clientSocket.isConnected();
System.out.println("-------------------link:" + isConnected);
// while (true){
// InputStream inputStream = clientSocket.getInputStream();
// byte buffer[] = new byte[1024 * 4];
// int temp = 0;
// while ((temp = inputStream.read(buffer)) != -1) {
// System.out.println("服务端回执:"+new String(buffer, 0, temp));
// }
//
//
// try {
// Thread.sleep(1000);
// System.out.println("sleep.....1秒");
// }catch (Exception e){
// e.printStackTrace();
// }
// }
} catch (UnknownHostException e) {
e.printStackTrace();
} catch (IOException e) {
e.printStackTrace();
}
}http://download.youkuaiyun.com/detail/yangbin0513/9572658
源码

被折叠的 条评论
为什么被折叠?



