安卓socket通信实例_IdeaHub Board设备安卓设置
1、环境准备
安装Android Studio
连接IdeaHub Board设备
安装adb工具
2、创建一个新的Android项目
打开Android Studio
选择"Create New Project"
填写项目名称、包名、保存位置等信息
选择"Empty Activity"模板
点击"Finish"完成项目创建
3、添加网络权限
打开项目的AndroidManifest.xml文件
在<manifest>标签内添加以下代码:
“`xml
<usespermission android:name="android.permission.INTERNET" />
“`
4、编写服务器端代码
在项目的src/main/java目录下,新建一个名为ServerThread的Java类
编写ServerThread类的代码如下:
“`java
import java.io.IOException;
import java.io.OutputStream;
import java.net.Socket;
import android.os.Handler;
import android.os.Message;
import android.util.Log;
public class ServerThread extends Thread {
private static final String TAG = "ServerThread";
private boolean isRunning = true;
private Socket socket;
private OutputStream outputStream;
private Handler handler;
public ServerThread(Handler handler) {
this.handler = handler;
}
public void run() {
try {
// 创建一个ServerSocket监听8080端口
ServerSocket serverSocket = new ServerSocket(8080);
while (isRunning) {
// 等待客户端连接
socket = serverSocket.accept();
Log.d(TAG, "客户端已连接:" + socket.getInetAddress().getHostAddress());
// 获取输出流,用于向客户端发送数据
outputStream = socket.getOutputStream();
// 向客户端发送数据
outputStream.write("Hello, Client!".getBytes());
outputStream.flush();
}
} catch (IOException e) {
e.printStackTrace();
} finally {
if (outputStream != null) {
try {
outputStream.close();
} catch (IOException e) {
e.printStackTrace();
}
}
if (socket != null) {
try {
socket.close();
} catch (IOException e) {
e.printStackTrace();
}
}
}
}
}
“`
在MainActivity的onCreate方法中,启动ServerThread线程:
“`java
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
// 启动服务器端线程,监听8080端口,接收客户端连接请求并发送数据给客户端
new ServerThread(new Handler()).start();
}
“`
5、编写客户端代码(IdeaHub Board设备)
打开设备的浏览器,输入网址:http://192.168.1.100:8080(IP地址根据实际情况修改)
在浏览器中查看服务器端发送的数据,确认连接成功。
原创文章,作者:未希,如若转载,请注明出处:https://www.kdun.com/ask/679098.html
本网站发布或转载的文章及图片均来自网络,其原创性以及文中表达的观点和判断不代表本网站。如有问题,请联系客服处理。
发表回复