永发信息网

用Socket做链接的C#服务器和android客户端,不在同一个电脑上就连不上了

答案:2  悬赏:0  手机版
解决时间 2021-03-14 22:42
同一电脑上的android客户端和服务器能连上,但是android客户端换到另一台电脑上就连不上了~
请问下SOCKET需要做些什么设置,才能连上,还是说用SOCKET通讯就只能在统一网络中,我查了下有说端口转发的,但不知道怎么做
最佳答案
socket是通过ip地址和端口号链接的
在同一个局域网内比如有一台服务器,两台客户端。
服务器IP:10.0.0.112,开放端口为8888
客户端的socket就应该这样写
socketAddress address=new IntSocketAddress("10.0.0.112",8888);
Socket socket=new Socket(address,int); //这句会让你处理异常,可以处理超时链接,int是时间,单位为毫秒

同一台电脑的话IP地址其实是相同的,所以能够链接。
全部回答
c#中的socket.connected 不是指当前是否处于连接状态,这个是挺讨厌的。其实通过发包是肯定可以自动是否处于连接状态。下面是不用发包的检查办法 用socket中的poll方法检查 static bool issocketconnected(socket s)    {        return !((s.poll(1000, selectmode.selectread) && (s.available == 0)) || !s.connected);    }  不过,如果客户端不是程序退出、电脑关机等正常断线方式,而且因为网线被拔等非正常断线,这种方法没有用。还是老老实实,通过服务器定期向客户端来发包来检查的好,这样比较靠谱,而且肯定正确,就是服务器累了点
我要举报
如以上问答信息为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
DNF鬼剑士的光属性抗性为什么是负的
那位仁兄有 王妃太狂野王爷你敢娶我吗下载地
内存卡烧了有什么特征??
基督教徒可以吃羊肉么?
龙之谷总是掉线怎么办
这城市那么空,这回忆那么凶,这街道车水马龙
爱多多婴儿游泳馆怎么去啊,有知道地址的么
每年有那些女人的节日
监狱学园出了ova还会有第二季吗
如何培养养鹅用的的青饲料
宝宝几个月开始加鸡蛋能不能吃
红兴隆市场在哪里啊,我有事要去这个地方
本人想在暑假从江苏常州出发 去中国比较远的
农业银行信用卡邮寄分行中一般需要几天,
深圳学舞蹈好不好学呢,学费贵吗
推荐资讯
谢谢大家,新东方和江博哪个比较好?
恒峰广告公司地址在什么地方,想过去办事
rMBP的屏幕“涂层脱落”问题是怎么回事
从桂林路到宽平大桥坐公交怎么走
休息一会茶坊地址有知道的么?有点事想过去
求文古代耽美文 教主攻用小受去敌人那里换取
好看的天龙八部同人小说
第二个字是臭的成语
妻3的全CG存档怎么用
唐人神集团湖南湘大兽药有限公司地址有知道的
谢谢谁能告诉我,青岛共有多少家中大型的超市?
激战2微端版关了的话下载的东西会重置么?
正方形一边上任一点到这个正方形两条对角线的
阴历怎么看 ?