<iframe align="center" marginwidth="0" marginheight="0" src="http://www.zealware.com/csdnblog336280.html" frameborder="0" width="336" scrolling="no" height="280"></iframe>
获取IP后是否可以和它通讯呢?
Hi,继续上回的讨论《[JavaME]手机是否能够申请到动态IP[2]?》。
上回说到申请动态IP是可以了,并且准备好了一个线程等候在socket://10.16.195.219:8110之类的端口上监听。
这次把代码修改了,完成了监听线程之后,就相当于起了一个Socket Server,一旦有人要连接它,就回复一个字符串说“God bless you!You are the No.”后面加上是第几位访问者的序号。
菜单中也相应加入了一个命令“联系ServerSocket”,就是向界面中的"ServerSocket为:"编辑框所指明的Server发起Socket连接请求,看能否得到回复;如果有回复,就输出到屏幕上。
源代码可以从
http://www.cnblogs.com/Files/zhengyun_ustc/GetDynamicIP.withServerSocketClient.rar获得。
发布包可以从
http://www.cnblogs.com/Files/zhengyun_ustc/GetDynamicIP.withServerSocketClient-deployed.rar获得。
实际在手机上测试结果并不理想,
首先,我们点击“注册动态IP”命令,
<shapetype id="_x0000_t75" coordsize="21600,21600" o:spt="75" o:preferrelative="t" path="m@4@5l@4@11@9@11@9@5xe" filled="f" stroked="f"></shapetype><stroke joinstyle="miter"></stroke><formulas></formulas><f eqn="if lineDrawn pixelLineWidth 0"></f><f eqn="sum @0 1 0"></f><f eqn="sum 0 0 @1"></f><f eqn="prod @2 1 2"></f><f eqn="prod @3 21600 pixelWidth"></f><f eqn="prod @3 21600 pixelHeight"></f><f eqn="sum @0 0 1"></f><f eqn="prod @6 1 2"></f><f eqn="prod @7 21600 pixelWidth"></f><f eqn="sum @8 21600 0"></f><f eqn="prod @7 21600 pixelHeight"></f><f eqn="sum @10 21600 0"></f><lock v:ext="edit" aspectratio="t"></lock><shape id="_x0000_i1026" style="WIDTH: 194.25pt; HEIGHT: 326.25pt" type="#_x0000_t75"></shape><imagedata src="file:///C:%5CDOCUME~1%5CVICTOR~1%5CLOCALS~1%5CTemp%5Cmsohtml1%5C01%5Cclip_image001.png" o:title=""></imagedata>
得到了一个ServerSocket端口号,将被更新到"ServerSocket为:"编辑框。
<shape id="_x0000_i1027" style="WIDTH: 193.5pt; HEIGHT: 336pt" type="#_x0000_t75"></shape><imagedata src="file:///C:%5CDOCUME~1%5CVICTOR~1%5CLOCALS~1%5CTemp%5Cmsohtml1%5C01%5Cclip_image003.png" o:title=""></imagedata>
然后,选择“联系ServerSocket”命令,后台线程将用
用下面的代码可以得到ServerSocket 服务的应答
|
socketConn = (SocketConnection) Connector.open(hostToPostTo);
// 从socketConn取得一个 DataInputStream
dis = new DataInputStream( socketConn.openInputStream() );
// 从服务器上取回响应
int ch;
while ( ( ch = dis.read() ) != -1 )
{
responseMessage.append( (char) ch );
};//结束while
////////////////////////////////////////////
// 告诉控制器url
Object[] argvs = {responseMessage.toString()};
m_controller.handleEvent(GUIController.EventID.EVENT_SOCKETSERVER_DISPLAYIP,
argvs);
////////////////////////////////////////////
|
但是,始终没有应答返回。
当然,在PC机上模拟器测试结果自然能够显示ServerSocket服务器应答,因为那上面的IP是本机内网IP。如下图所示:
<shape id="_x0000_i1025" style="WIDTH: 195.75pt; HEIGHT: 340.5pt" type="#_x0000_t75"></shape><imagedata src="file:///C:%5CDOCUME~1%5CVICTOR~1%5CLOCALS~1%5CTemp%5Cmsohtml1%5C01%5Cclip_image005.png" o:title=""></imagedata>
本文属于讨论稿,提供的仅仅是测试意见。
本文还可以从
http://www.cnblogs.com/zhengyun_ustc/archive/2005/11/16/ServerSocketConnection3.html 得到最新稿。
郑昀@ultrapower
| 类别
| 编写日期
|
Keyword: Mobile dynamicIP j2me midp ServerSocketConnection
| 讨论稿
| 2005年11月16日星期三
|
分享到:
相关推荐
3. **MIDP(移动信息设备 profile)**:这是JavaME针对移动设备的API集,提供图形用户界面、网络访问等功能。 4. **用户界面组件**:如LCDUI(Limited Connected Device Configuration User Interface),是JavaME...
Java ME (Micro Edition) 是Java平台的一个版本,专为资源有限的移动设备和嵌入式系统设计。这个API中文手册是开发者在进行Java ME应用程序开发时的重要参考资料,它提供了详细的类库、接口和方法说明,使得开发者能...
本工具自动获取本地运营商分配的公网地址...本工具提供java源码,可根据安全组的规则修改,安全组定了后就可一劳永逸地解除动态IP地址分配变化的烦恼。 本工具适用于阿里云开发的开发者,其他公有云用户也可移植使用。
探讨了目前移动政务的现状,指出在我国基于手机的移动政务受众面更广并且访问更便捷,文章认为java ME技术是实现移动政务的最佳选择,并从java ME技术与WAP技术的比较以及java ME为移动政务提供的技术支持两个方面对此...
本项目是一个基于Java ME的射击类手机游戏,其开发过程涉及到的技术和知识点丰富多样,对于学习移动游戏开发具有很高的参考价值。 首先,我们要了解Java ME的开发环境。该项目使用MyEclipse作为集成开发环境(IDE)...
java手机软件开发资料全集 资料清单: 1、Java手机程式设计入门 2、J2ME+手机+开发+视频 3、J2ME开发大全 4、Java(学习JAVA必备教程),看完了你也会编手机JAR软件了!...11、基于Java技术手机移动学习开发研究
中国移动LBS手机定位JAVA源码,CELL-ID技术是目前最简单的定位技术,它的原理是通过获取目标手机所在的蜂窝小区ID来确定其所在的位置,提供给定位用户。它不需要移动台提供任何定位测量信息,也无须对现网进行改动,...
Java 实现免费代理IP的获取方式 并动态实时校验是否有效,java文件项目内含有Jsoup的Jar包(Jsoup是加工过的,含请求),有2个主入口程序: 其一:用于请求代理IP,并立即校验是否是一个有效的代理IP,如果有效,...
Java技术在移动增值服务上的应用广泛且深远,尤其在智能手机普及的今天,其影响力不言而喻。Java作为跨平台的编程语言,具有“一次编写,到处运行”的特性,这使得它成为开发移动增值服务的理想选择。以下将详细阐述...
而手机的AP热点,即移动接入点(Mobile Access Point),允许其他设备通过Wi-Fi连接到手机,并共享其移动数据连接。 要获取连接到手机热点的设备的IP地址,我们需要做以下步骤: 1. **开启手机AP热点**:在Android...
IP库需要定期更新,因为IP地址分配是动态的。可以设置定时任务,定期下载新的IP库文件或更新数据库。 5. **使用第三方库** 为了避免自己处理IP库的加载、查询和更新,可以使用第三方库,如MaxMind的GeoIP2。这个...
Java ME是诺基亚手机及其他早期移动设备上的主流开发环境,它提供了一套轻量级的API,允许开发者创建跨平台的移动应用程序。MIDP(Mobile Information Device Profile)是Java ME的一个子集,定义了移动设备上的用户...
用Java写的一个小巧程序,局域网内,扫描开放指定端口的主机
### 使用Java获取访问者真实IP地址 在现代Web开发中,获取客户端的真实IP地址是非常重要的。这不仅有助于网站统计分析,还可以用于安全控制、地域限制等功能。然而,在使用如Apache、Squid等反向代理服务器的情况下...
Java访问权限控制,为Java操作文件、写入文件分配合适的权限,定义写到文件的信息、定义文件,输出到c:/hello.txt、写信息到文件、关闭输出流。 Java绘制图片火焰效果 1个目标文件 摘要:Java源码,图形操作,火焰...
Java游戏是基于Java ME(Java Micro Edition)平台开发的,该平台特别适用于资源有限的移动设备。Java游戏的优势在于其跨平台性,可以在多种不同操作系统和硬件配置的手机上运行,这使得它们成为触屏手机用户的一个...
java中通过ip获取远程客户端的mac地址,支持跨平台
根据Ip地址获取归属地,需要用到ip库,我这里用到的是QQWry.dat
Java访问权限控制,为Java操作文件、写入文件分配合适的权限,定义写到文件的信息、定义文件,输出到c:/hello.txt、写信息到文件、关闭输出流。 Java绘制图片火焰效果 1个目标文件 摘要:Java源码,图形操作,火焰...
Java手机模拟器是一种工具,它允许用户在个人电脑(PC)上运行Java应用程序(通常以JAR文件格式存在)来模拟手机环境。这对于开发者来说是一个非常实用的工具,因为它们可以方便地测试和调试Java应用,而无需实际的...