专注收集记录技术开发学习笔记、技术难点、解决方案
网站信息搜索 >> 请输入关键词:
您当前的位置: 首页 > BlackBerry

怎么在黑莓模拟器下实现socket通信啊

发布时间:2010-05-30 19:37:04 文章来源:www.iduyao.cn 采编人员:星星草
如何在黑莓模拟器上实现socket通信啊?
我建了一个客户端和一个服务器
客户端
public class Client {
StreamConnection  conServer = null;
    boolean isConnected = false;

public boolean SocketConn(String address,String port) throws IOException{
String strServerAdd = "socket://"+address+":"+port;
    try {
     conServer = (StreamConnection)Connector.open(strServerAdd);  
} catch (Exception e) {
System.out.println("Conect server error!");
return false;
}
if(conServer==null){
isConnected = false;
return false;
}
isConnected = true;
System.out.println("Conect success!");
return true ;
}

服务器
public class Service extends Thread{
ServerSocketConnection SocketSer;
String runlogString = "";
ServiceMainScreen serMainscr = null;
public Service(ServiceMainScreen serMainscr ,String port){
this.serMainscr = serMainscr;
try {
SocketSer = (ServerSocketConnection)Connector.open("socket://:"+port);
this.start();
runlogString = "服务器已经启动!";
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}

// 如有连接,则新增一个线程对连接进行处理

}
public void run(){
while(true){

// 等待客户端连接
try {
SocketConnection sc = (SocketConnection)SocketSer.acceptAndOpen();
DataInputStream dis = (DataInputStream) sc.openDataInputStream();  
            String msg = dis.readUTF();  
            serMainscr.message.append(sc.getAddress()+"用户:"+msg);  
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
}

}
然后我在一天电脑上用模拟器运行服务器,再在台局域网内的另一台电脑上用模拟器运行客户端。。发现他们不能连接。。是不是代码存在缺陷还是。遗漏了什么要点啊。。比如模拟器的一些什么设置的?
------解决方案--------------------
客户端为什么不用SocketConnection?
------解决方案--------------------
引用:
客户端为什么不用SocketConnection?
socketConnection我也用过了,也不行,我在网上看到有这两种用法:有用StreamConnection的也有用SocketConnection的。都不行
------解决方案--------------------
引用:
引用:

客户端为什么不用SocketConnection?
socketConnection我也用过了,也不行,我在网上看到有这两种用法:有用StreamConnection的也有用SocketConnection的。都不行

之前我用SocketConnection连接过服务器,应该是没有问题的,不过服务器端没有写过,不行的话抓包看看
------解决方案--------------------
该回复于2011-07-26 10:50:42被版主删除
------解决方案--------------------
该回复于2011-07-26 13:14:31被版主删除
------解决方案--------------------
需要加";deviceside=true"这个参数,或者启动mds模拟器
友情提示:
信息收集于互联网,如果您发现错误或造成侵权,请及时通知本站更正或删除,具体联系方式见页面底部联系我们,谢谢。

其他相似内容:

热门推荐: