文档章节

Android Socket通信

断伤-续痛
 断伤-续痛
发布于 2014/05/04 19:58
字数 623
阅读 414
收藏 1

写这些程序不要太过于着急,你要知道你想干什么,有什么用,然后形成文档,知道流程,这样你就可以写了!

就好比如socket,功能很简单,就是电脑做server,手机端和电脑端都可以做client,然后创建一个群聊!

这个其实不难,首先你要知道server用一个serversocket来new一个对象,然后端口号不是1-1023就好了!我的是8080,;

然后就是socket对象获取serversocket。

群聊要用一个数组把客户端的数量和属性保存起来,这样发送消息才可以逐个发送!

新建个DataInputStream和DataOutputStream,把Input的数据拿出来,我用readUTF();相应的你发送数据也要用UTF的类型!

把取出来的数据再遍历整个数组,把你取出来的数据writeUTF(str),中途有走掉的要及时remove掉,不然以后会慢的!

这样你的服务器就完成了!

如果你要写数据库也行,你自己加个数据库写吧!

客户端更加简单

首先new一个socket对象,把服务器所在的IP,开放的端口号填上去,我的端口号是8080。

然后new一个DataInputStream和DataOutStream,用来存放服务器发送过来的数据,和传输数据去服务器!


这里需要提醒下,获取数据要写个线程去获取!这样你才可以及时获取到,写这个电脑端的client没问题,到了手机端的client的时候我用TextView来显示数据,然后setText()方法不行,会报错,并且它不能刷新,需要手动去刷新,我在这里坑了好久,最后只能写个线程去刷新,线程1秒刷新一次太慢,0秒刷新又太快,会死掉,只能用100MS,这样会不定期的死掉,起码比其他的要好啦!。

服务端你也要写个线程去获取数据,一旦有数据获取了,马上发出去,不用等!

最终就这样完成了,顺便提醒下,电脑端和手机端的IP一样的!说明什么?说明你的手机要用电脑发出来的WIFI这样你才可以使用!不然连接不了!

代码实现:http://download.csdn.net/detail/adroitly/7293053

© 著作权归作者所有

共有 人打赏支持
断伤-续痛
粉丝 0
博文 1
码字总数 623
作品 0
清远
程序员
android网络通信之socket教程实例汇总

一、socket基础 1、Socket通讯机制(详细),如何将socket通信的客户端与服务器 http://www.eoeandroid.com/thread-61727-1-1.html 2、Http和Socket区别 http://www.eoeandroid.com/thread-9...

程序袁_绪龙
2014/12/11
0
0
android的NDK和java进行本地socket通信

关于Android应用与Framework的socket通信,相信关心这个问题的朋友们已经看过《android使用socket使底层和framework通信》这篇文章,美中不足的是作者只贴出一些关键的代码片段而并没有放出源...

shouyong
2012/12/21
0
0
PC电脑和Android模拟器访问及模拟器之间tcp/udp通信

Android系统默认只能通过IP(10.0.2.2)单向访问PC电脑,而PC电脑不能通过IP来直接访问Android模拟器系统。要想实现PC电脑和Android模拟器系统以及Android模拟器之间相互通信必须借助端口重定...

小克898
2013/09/06
0
0
android socket编程实例

android客户端通过socket与服务器进行通信可以分为以下几步: 应用程序与服务器通信可以采用两种模式:TCP可靠通信 和UDP不可靠通信。 (1)通过IP地址和端口实例化Socket,请求连接服务器:...

wangwenya
2013/08/22
0
0
android socket编程实例

android客户端通过socket与服务器进行通信可以分为以下几步: 应用程序与服务器通信可以采用两种模式:TCP可靠通信 和UDP不可靠通信。 (1)通过IP地址和端口实例化Socket,请求连接服务器:...

postdep
2014/08/25
0
1

没有更多内容

加载失败,请刷新页面

加载更多

下一页

(三)Nginx配置·续

概述 前文写了关于Nginx环境配置,但是还没有完,接下来将会继续讲三个相关的配置 主要是以下三个 1.Nginx访问日志 2.Nginx日志切割 3.静态文件不记录日志和过期时间 Nginx访问日志 1.先看看...

杉下
今天
1
0
jquery创建类似于java的map

var map = {}; // Map map = new HashMap(); map[key] = value; // map.put(key, value); var value = map[key]; // Object value = map.get(key); var has = key in map; // boolean has = ......

SuperDabai
今天
0
0
java大数据转换16进制转10进制

public static void main(String[] args) {String hex = "0xdbf3accc683297cf0000";BigInteger amount = new BigInteger(hex.substring(2), 16);System.out.println(amount);......

任梁荣
昨天
2
0
OSChina 周六乱弹 —— 目测我们程序员丁克的几率不大

Osc乱弹歌单(2018)请戳(这里) 【今日歌曲】 @真Skr小机灵鬼儿:8.13分享Jocelyn Pook/Russian Red的单曲《Loving Strangers》 《Loving Strangers》- Jocelyn Pook/Russian Red 手机党少...

小小编辑
昨天
13
3
TypeScript基础入门 - 函数 - 剩余参数

转载 TypeScript基础入门 - 函数 - 剩余参数 项目实践仓库 https://github.com/durban89/typescript_demo.gittag: 1.2.1 为了保证后面的学习演示需要安装下ts-node,这样后面的每个操作都能...

durban
昨天
1
0

没有更多内容

加载失败,请刷新页面

加载更多

下一页

返回顶部
顶部