资源简介
这里实现一个跨平台的socket通讯,Android手机作为客户端向Ubuntu的QT平台上的服务端发送一个字符命令,由于是只发送一个字符,这里我尽可能简化socket通讯的过程以供后人参考。解决了跨平台的socket传输字符编码转换的问题。我的文章地址:http://blog.csdn.net/u013453604/article/details/47733923

代码片段和文件信息
//package com.defonds.socket.begin;
import java.io.BufferedReader;
import java.io.DataInputStream;
import java.io.DataOutputStream;
import java.io.InputStreamReader;
import java.net.ServerSocket;
import java.net.Socket;
public class Server {
public static final int PORT = 60000;//监听的端口号
public static void main(String[] args) {
System.out.println(“服务器启动...\n“);
Server server = new Server();
server.init();
}
public void init() {
try {
ServerSocket serverSocket = new ServerSocket(PORT);
while (true) {
// 一旦有堵塞 则表示服务器与客户端获得了连接
Socket client = serverSocket.accept();
// 处理这次连接
new HandlerThread(client);
}
} catch (Exception e) {
System.out.println(“服务器异常: “ + e.getMessage());
}
}
private class HandlerThread implements Runnable {
private Socket socket;
public HandlerThread(Socket client) {
socket = client;
new Thread(this).start();
}
public void run() {
try {
// 读取客户端数据
DataInputStream input = new DataInputStream(socket.getInputStream());
String clientInputStr = input.readUTF();//这里要注意和客户端输出流的写方法对应否则会抛 EOFException
// 处理客户端数据
System.out.println(“客户端发过来的内容:“ + clientInputStr);
// 向客户端回复信息
DataOutputStream out = new DataOutputStream(socket.getOutputStream());
//System.out.print(“请输入:\t“);
// 发送键盘输入的一行
//String s = new BufferedReader(new InputStreamReader(System.in)).readLine();
//out.writeUTF(s);
out.close();
input.close();
} catch (Exception e) {
System.out.println(“服务器 run 异常: “ + e.getMessage());
} finally {
if (socket != null) {
try {
socket.close();
} catch (Exception e) {
socket = null;
System.out.println(“服务端 finally 异常:“ + e.getMessage());
}
}
}
}
}
}
属性 大小 日期 时间 名称
----------- --------- ---------- ----- ----
目录 0 2015-08-17 23:39 Android与QT实现socket通信\
文件 2737 2015-08-16 21:02 Android与QT实现socket通信\Server.java
目录 0 2015-08-17 23:37 Android与QT实现socket通信\test1\
文件 213 2015-08-17 22:04 Android与QT实现socket通信\test1\main.cpp
文件 1649 2015-08-17 22:32 Android与QT实现socket通信\test1\mainwindow.cpp
文件 531 2015-08-17 20:52 Android与QT实现socket通信\test1\mainwindow.h
文件 1243 2015-08-17 20:33 Android与QT实现socket通信\test1\mainwindow.ui
文件 380 2015-08-17 20:26 Android与QT实现socket通信\test1\test1.pro
文件 18375 2015-08-17 21:39 Android与QT实现socket通信\test1\test1.pro.user
文件 52 2015-08-17 23:38 Android与QT实现socket通信\test1\说明.txt
目录 0 2015-08-17 23:38 Android与QT实现socket通信\Test_socket\
文件 475 2015-08-14 16:31 Android与QT实现socket通信\Test_socket\.classpath
文件 847 2015-08-14 16:31 Android与QT实现socket通信\Test_socket\.project
目录 0 2015-08-17 23:36 Android与QT实现socket通信\Test_socket\.settings\
文件 177 2015-08-14 16:31 Android与QT实现socket通信\Test_socket\.settings\org.eclipse.jdt.core.prefs
文件 934 2015-08-16 16:43 Android与QT实现socket通信\Test_socket\AndroidManifest.xm
目录 0 2015-08-14 16:31 Android与QT实现socket通信\Test_socket\assets\
目录 0 2015-08-17 23:36 Android与QT实现socket通信\Test_socket\bin\
文件 934 2015-08-16 22:04 Android与QT实现socket通信\Test_socket\bin\AndroidManifest.xm
目录 0 2015-08-17 23:36 Android与QT实现socket通信\Test_socket\bin\classes\
文件 1428276 2015-08-17 20:35 Android与QT实现socket通信\Test_socket\bin\classes.dex
目录 0 2015-08-17 23:36 Android与QT实现socket通信\Test_socket\bin\classes\android\
目录 0 2015-08-17 23:36 Android与QT实现socket通信\Test_socket\bin\classes\android\support\
目录 0 2015-08-17 23:36 Android与QT实现socket通信\Test_socket\bin\classes\android\support\v7\
目录 0 2015-08-17 23:36 Android与QT实现socket通信\Test_socket\bin\classes\android\support\v7\appcompat\
文件 629 2015-08-17 17:57 Android与QT实现socket通信\Test_socket\bin\classes\android\support\v7\appcompat\R$anim.class
文件 5136 2015-08-17 17:57 Android与QT实现socket通信\Test_socket\bin\classes\android\support\v7\appcompat\R$attr.class
文件 763 2015-08-17 17:57 Android与QT实现socket通信\Test_socket\bin\classes\android\support\v7\appcompat\R$bool.class
文件 594 2015-08-17 17:57 Android与QT实现socket通信\Test_socket\bin\classes\android\support\v7\appcompat\R$color.class
文件 1530 2015-08-17 17:57 Android与QT实现socket通信\Test_socket\bin\classes\android\support\v7\appcompat\R$dimen.class
文件 5191 2015-08-17 17:57 Android与QT实现socket通信\Test_socket\bin\classes\android\support\v7\appcompat\R$drawable.class
............此处省略103个文件信息
相关资源
- Android非常漂亮的登录界面
- pc与android通过usb socket实现手机通信
- android毕业设计
- 百度地图自定义Markerandroid
- Android分区工具包
- android-support-v4.jar已打包进去源代码
- u-blox_Android_GNSS_Driver_v3.10驱动源码+中
- java Socket发送/接受报文
- 个人根据Android移动开发案例详解手写
- android 视频播放器 项目和原码
- Android【动画】【特效】 17种动画特效
- 基于Android智能家居详细设计(经典)
- android通过JDBC连接Mysql数据库
- Android通讯录的源代码
- android 瀑布流Demo
- 指纹传感器FPC1080在android下的驱动
- delphi xe5 android 调用照相机摄像头拍照
- Android手机连连看游戏源码
- android-sdk-windows v2.3离线完整版
- android 底部弹出菜单(带透明背景)
- 简单qq聊天(Java socket实现)
- Android工程模式简介.rar
- 采用TCP SOCKET技术编写C/S模式的java聊天
- Android蓝牙和Cors网络开发源码
- Android powermanger wakelock
- Android v7的一些jar包
- 最新android supportV7包
- android图片压缩工具类分享
- 单机搭建Android(解决Network is unreach
- Android上监听收到的短信(SMS)
评论
共有 条评论