Android智能终端目前支持的网络有:GPRS无线网络和WiFi无线网络。WiFi无线网络的优点是网速快,缺点是有范围和信号强度的要求。而GPRS的优缺点和WiFi无线网络正好相反。目前,GPRS的2G网络传输速率在50 kb/s左右,3G网络速度更快,如果采用WiFi网络接入到Internet,速度甚至可以达到1 Mb/s.速度上完全可以达到远程控制中传输命令的速率要求。
本系统采用多网络方式:优先选择WiFi无线网络,其次采用GPRS网络,最后采用GSM发送短消息控制。采用WiFi无线网络和GPRS网络的时候,Android终端之间通过Socket进行通信。
如果该系统只是应用在局域网内,就只能使用WiFi无线网络;如果应用在远程或者广域网上,就可以使用WiFi无线网络和GPRS网络两者相结合的方式;如果没有WiFi和GPRS,才使用GSM网络。
在广域网内使用时,当被控终靖启动系统的时候,会采用UDP方式向广域网发送登录广播,或者采用TCP协议向特定的控制端IP发送注册信息。控制端接收到信息后,注册到本机,然后通过TCP方式发送控制命令进行远程控制。
在没有WiFi和GPRS的情况下,也可以采用GSM网络发送短消息命令进行一些简单的控制操作,例如:打开WiFi、打开GPRS网络等,使其可以使用上述两种网络进行控制。使用GSM网络的前提条件是需要知道被控终端的SIM号码。
2. 2 控制端设计
Android控制端在使用WiFi和GPRS网络时,通过Socket进行通信,可以实现全部的命令;在使用GSM网络时,通过短消息发送命令进行控制,只能发送部分操作指令,不能进行的操作包括发送文件、应用程序等需要通过IP地址进行通信的操作。
Sqlite数据库保存被控终端的信息数据和操作日志。Linux文件系统保存需要发送的文件和应用程序等。Android控制端具体功能设计如下:
①自动注册:编写Java程序通过接口调用MulticastSocket发送请求注册广播,并监控端口,接收被控终端的注册广播。
②发送消息:通过已注册的被控终端IP地址,编程调用Socket接口发送消息到被控终端,并监听端口,接收反馈消息。
③发送文件:编写监控程序调用Socket端口进行通信,调用Android文件系统,读取存储在SD卡上的文件进行发送。
④发送控制命令:有两种方式,一种通过Socket发送控制命令到被控终端IP;另一种通过GSM网络发送特定格式的短消息到被控终端手机,实现命令控制设备。
欢迎光临 电子技术论坛_中国专业的电子工程师学习交流社区-中电网技术论坛 (http://bbs.eccn.com/) | Powered by Discuz! 7.0.0 |