SocketChat通信
来源:互联网 发布:解码器和矩阵的区别 编辑:程序博客网 时间:2024/06/08 15:56
MainActivity
import android.os.Bundle;import android.support.v7.app.AppCompatActivity;import android.view.View;import java.io.IOException;import java.io.OutputStream;import java.net.Socket;import java.net.UnknownHostException;/** * 客户端 */public class MainActivity extends AppCompatActivity { private OutputStream outputStream; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); connectServerWithTCPSocket(); } //发送消息 public void sendMsg(){ // 把数据写入到OuputStream对象中 try { outputStream.write("客户端数据".getBytes()); // 发送读取的数据到服务端 outputStream.flush(); } catch (IOException e) { e.printStackTrace(); } } protected void connectServerWithTCPSocket() { new Thread(){ @Override public void run() { super.run(); Socket socket; try {// 创建一个Socket对象,并指定服务端的IP及端口号 socket = new Socket("192.168.191.2", 1989); // 获取Socket的OutputStream对象用于发送数据。 outputStream = socket.getOutputStream(); } catch (UnknownHostException e) { e.printStackTrace(); } catch (IOException e) { e.printStackTrace(); } } }.start(); } public void onClick(View view) { //发送消息给服务端 sendMsg(); }}
activity_main布局
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:tools="http://schemas.android.com/tools" android:layout_width="match_parent" android:layout_height="match_parent" tools:context="alice.bw.com.socketclient.MainActivity"> <Button android:layout_width="match_parent" android:layout_height="wrap_content" android:onClick="onClick" android:text="这里是客户端"/></RelativeLayout>
阅读全文
0 0
- SocketChat通信
- 通信
- 通信
- 通信
- 通信
- 通信
- 通信
- '通信'
- 通信
- 通信
- 网络通信,移动通信
- 进程通信 & 线程通信
- 【通信】通信发展史
- 【通信】通信中的基本知识
- 【通信】互联网通信
- 【通信】移动通信
- 进程通信 线程通信
- 进程通信-信号通信
- 数据库视频总结(五)
- dao
- Linux安装
- 虚拟机中安装了Ubuntu,输入密码准备登陆时,登陆之后又弹回到登陆界面,无法进入系统
- snacks的模拟赛(t1)
- SocketChat通信
- React开发调试工具
- 一个领导发给下属的邮件,醍醐灌顶!
- ionic下面三个标签,带侧拉Home.html子页面
- java se--8.多线程-4.生命周期
- 自考总结
- TextView识别网址点击跳转
- AngularJs数据管理与路由
- 基于链表的列表实现