1楼:匿名用户
其实跟电脑差不多了,android里调用socket的方法,拿到socket后就可以发送数据并接收数据。
我最近正在做android方面的通信,真的想把完整的**都给你,可是没办法,公司机密。。
给你我的socket连接类吧。。。
package sean.socket;
///////////把mytype的一些方法替换成writer的方法
import java.io.ioexception;
import java.io.inputstream;
import java.io.outputstream;
import java.***.i***address;
import java.***.socket;
import java.***.unknownhostexception;
import sean.sysout;
import sean.business.businesscenter;
import sean.business.loginmanager;
import sean.format.mytype;
import sean.io.reader;
import sean.transfer.bytesbuffer;
import sean.transfer.datacenter;
public class socketthread implements runnable
@override
public void run()
} else
// }
// 执行到这里说明inputstream.read()已中断,说明socket已断开连接
// cs=null;
loginmanager.setloginvalue(-1);// 业务中心登录注销,即登录管理器注销登录
datacenter.setbool_login(false);// 数据中心登录注销
sysout.printexception(cs + "已断开。");
thread.sleep(2 * 1000);// 睡眠2秒后继续循环
// try catch (ioexception e)
} catch (unknownhostexception e) catch (ioexception e)
try catch (interruptedexception e2)
string exceptioninfos=e.tostring();
if(exceptioninfos.endswith("connection refused"))
} catch (ioexception e1) catch (interruptedexception e2)
}} catch (interruptedexception e)
}// while(bool_socketthread)
sysout.println("socketthread已停止。", sysout.tempoutdebug);
}public static socket getsocket()
// public void setbool(boolean bool0)
public static outputstream getoutputstream()
public static void stopsocketthread()
}} catch (ioexception e) }}
必须先在android里启动一个服务,由服务去启动这个socket线程,因为如果是ui去启动的话,页面会卡住。。。
如何用socket实现android手机与手机之间的通信
2楼:组长景吞
有两种方案:
1、在pc机上建立服务器,手机与手机之间的通信通过服务器进行中转2、一部手机作为服务器,另一部手机作为客户端接入该手机一般是第一种方案
如何用socket实现android手机与手机之间的通信
3楼:育知同创教育
有两种方案:
1、在pc机上建立服务器,手机与手机之
间的通信通过服务器进行中转
2、一部手机作为服务器,另一部手机作为客户端接入该手机
一般用第一种方案,示例**如下:
1、pc端:
serversocket=new serversocket(5648); //在5648端口进行侦听
socket sk = serversocket.accept();//如果有接入,则创建对应的socket;
2、手机端:
socket=new socket("tobacco5648.xicp.***",5648);//连接socket
3、消息输入输出:
pw=new printwriter(socket.getoutputstream()); //消息输出
pw.println("发送消息");
pw.flush();
br=new bufferedreader(new inputstreamreader(socket.getinputstream())); //消息接收
while((str=br.readline())!=null)
4楼:匿名用户
参考一般的java的socket编程,如果通过手机网络,就不要使用udp即可。
5楼:匿名用户
可以用wifi热点来实现通信,用一个手机开启wifi热点后,启动socket监听,另一台手机连接wifi后,开始连接服务器socket,连接成功了,就可以通信了. 留地址发源码给你, **可能写的不怎么样,但是简单的通信都是ok的!
6楼:小船儿水中过
主要应用socket技术,android本身具有这个api,你直接调用即可,可以用wifi这数据线连接
android 之间能否通过 socket 进行通信. 5
7楼:匿名用户
第一个问题:这是可以的,android通过socket访问本机服务器pc, ip是10.0.2.2。
第二哥问题:用serversocket建立一个对象 serversocket serversocket = new serversocket(serverlistenport, connectionmaxlength, i***address.getbyname(serveripstring));
再加一个监听socket in***ing = serversocket.accept();就可以检测客户端发过来的连接请求,之后使用流就可以完成他们之间的通信了。
原创手打,thanku
8楼:匿名用户
能,ip是127.0.0.1,端口随便定
9楼:匿名用户
http://blog.csdn.***/wufenglong/archive/2010/07/31/5778862.aspx
哦,我想不能,因为他们不能解析各自的ip,都默
认是127.0.0.1,怎么连呢。
10楼:匿名用户
android与android之间能否通过socket建立通信?
不可以吧。现在一般的手机网络**都是由一个pc服务端做中转的,要是手机直接可以直接连接何必要那么干呢?
安卓手机如何通过蓝牙进行socket通信 25
11楼:匿名用户
uuid值出现错误。看一下android有关bluetooth的api,用于普通蓝牙适配器和android手机蓝牙模块连接的,而且这
个uuid的值必须是00001101-0000-1000-8000-00805f9b34fb。这个是android的api上面说明的.connect().
在连接的时候,android手机作client(主动和电脑建立连接),如果电脑作为server(一直监听是否有服务连接),则需要在手机端调用这样一行**.两边的uuid必须是一样的,这是一个服务的唯一标识。
请问下,android能不能直接通过手机ip进行socket通信,不是局域.
12楼:匿名用户
你的这个问题就好比,你家宽带拨号获得一个ip,然后你想通过这个ip来直接连接到我的电脑(也是宽带拨号), 这是不可能的。。。。因为我们的拿到的ip都不是a b类的ip,而是运营商下的c类ip,并且网关也不一样。。。。手机上的ip也是这个意思,当你开机系统pppd拨号拿到的也只是个运营商的c类ip。。
本人网络学的并不是很好,可能术语表达并不正确。。。但是大概是这个意思。。。
13楼:匿名用户
可以的,只要通信的ip是通的就行了。
有两种方案:
1、在pc机上建立服务器,手机与手机之间的通信通过服务器进行中转
2、一部手机作为服务器,另一部手机作为客户端接入该手机
一般是第一种方案
1、pc端:
serversocket=new serversocket(5648); //在5648端口进行侦听
socket sk = serversocket.accept();//如果有接入,则创建对应的socket;
2、手机端:
socket=new socket("tobacco5648.xicp.***",5648);//连接socket
3、消息输入输出:
pw=new printwriter(socket.getoutputstream()); //消息输出
pw.println("发送消息");
pw.flush();
br=new bufferedreader(new inputstreamreader(socket.getinputstream())); //消息接收
while((str=br.readline())!=null)
14楼:匿名用户
首先没理解你所谓的“通过手机ip连接,且不是连接到一个局域网”的含义。ip只是一个地址,那么什么是通过ip连接? 也许你想说的是不用通过局域网交换机/集线器/wifi路由器连接,是否有其他的通信方式?
其实不用这些网络设备你也可以通信,用一个安卓手机,将wifi热点打开,让别的手机使用该热点wifi网络,这样就可以几个手机进行互相通信了。其实还是使用了wifi路由器,只不过是用手机本身的wifi网卡实现的。
pc服务器端和android手机客户端socket通信问题
15楼:卡卡西
1. pc服务器启用serversocket
两个通信实体在建立虚拟链路之前,需要有一方先准备好,主动接受来自其他通信实体的连接请求。
使用serversocket对象监听来自客户端的socket连接。
//创建serversocket对象
serversocket ss = new serversocket(30000);
//监听来自客户端的请求
while(true)
如果没有连接,则将一直处于等待状态。当接收到连接请求后,获取消息到输入流,并保存到文件。
//接收客户端消息
bufferedreader in = new bufferedreader(new inputstreamreader(client.getinputstream()));
string str;
bufferedwriter bw = new bufferedwriter(new filewriter("d:/apinfo"+ (i++) +".txt"));
while ((str = in.readline()) != null)
2. android终端使用socket通信
客户端使用socket的构造器连接服务器,指定服务器ip和端口号就可以了。
socket s = new socket(“192.168.1.100”, 30000);
这样服务器端的accept()方法就得到响应,从而向下执行,服务器端和客户端就形成了一对互相连接的socket。再进行通信时就没有服务器和客户端之分了,都是通过输入输出流进行通信。
详细步骤:
采用handler和timertask来定时扫描ap信息并发送给服务器端。timertask规定了到达指定的时间所要进行的任务。
timertask task = new timertask()
};handler传递message内容:
handler handler = new handler()
super.handlemessage(msg);
} }
接下来扫描ap信息并发送给服务器端,然后将结果保存。
wifimanager wifimanager=(wifimanager) getsystemservice(wifi_service);
wifimanager.startscan();
mwifilist = wifimanager.getscanresults();
由wifimanager说明可知,它可以用于处理已配置的网络,当前连接的网络及ap信息的扫描等情况。
向服务器发送消息:
socket = new socket("192.168.1.211",30000);
//向服务器端发送消息
printwriter out = new printwriter( new bufferedwriter( new outputstreamwriter(socket.getoutputstream())),true);
out.println(message);
其中message为获取的ap信息,测试收到的信息格式为:
ssid: icis_lab, bssid: 1c:
af:f7:9a:
65:e4, capabilities: [wpa-psk-tkip+ccmp], level:
-80,frequency: 2437
旋转编码器和主轴怎么连接安装,空心轴编码器如何与主轴进行连接?
1楼 1 增加一个变速箱实现变径。将增加设备费。 2 加工一个变径接手。必须保证加工精度和安装精度。 3 在主轴上钻个孔,将编码器的轴嵌入,编码器外壳固定他处。必须保证加工精度和安装精度。 4 在主轴上钻个孔,嵌入一根细轴 或加工一个变径轴固定在主轴上。如果扭转性能要求不高,采用软接手或弹簧接手连接...