黑莓核心开发向导 - 2.2.3 使用套接字连接
来源:互联网 发布:网络情缘歌词 编辑:程序博客网 时间:2024/05/16 15:03
虽然你可以通过套接字连接来实现HTTP,但由于如下原因,你应该使用HTTP连接:
> 套接字连接不支持黑莓移动数据系统(MDS)的特色功能,例如推送.
> 使用套接字连接的黑莓设备应用程序通常比使用HTTP连接的黑莓设备应用程序需要更多的带宽
BlackBerry® device applications that use socket connections typically require significantly more bandwidth than BlackBerry device applications that use HTTP connections.
1. 导入如下类:
* net.rim.device.api.system.CoverageInfo
* javax.microedition.io.Connector
* java.lang.String
* java.io.OutputStreamWriter
* java.io.InputStreamReader
2. 导入如下接口:
* net.rim.device.api.system.CoverageStatusListener
* javax.microedition.io.StreamConnection
3. 使用net.rim.device.api.system包中的CoverageInfo类和CoverageStatusListener接口来确认黑莓设备在无线网络覆盖区域内。
4. 调用Connector.open(),指定socket为协议,并将参数deviceside=false附在URL的末端
* 为使用黑莓MDS服务打开套接字连接,将deviceside=false附于URL末端。黑莓设备应用程序必须明确的输入本地主机IP,因为localhost是不被支持的。
private static String URL = "socket://local_machine_IP:4444;deviceside=false";
StreamConnection conn = null;
conn = (StreamConnection)Connector.open(URL);
* 为通过直接TCP来打开套接字连接,将参数deviceside=true附于URL末端。
private static String URL = "socket://local_machine_IP:4444;deviceside=true";
StreamConnection conn = null;
conn = (StreamConnection)Connector.open(URL);
* 为通过直接TCP来打开套接字连接,指定APN信息,将参数deviceside=true附于URL末端,并指定将在其之上建立连接的APN。指定链接到APN的用户名和密码(如果APN需要密码)。
private static String URL = "socket:
//local_machine_IP:4444;deviceside=true;apn=internet.com;tunnelauthusername =user165;tunnelauthpassword=user165password";
StreamConnection conn = null;
conn = (StreamConnection)Connector.open(URL);
5. 使用 openInputStream() 和 openOutputStream() 来发送和接受数据。
OutputStreamWriter _out = new OutputStreamWriter(conn.openOutputStream());
String data = "This is a test";
int length = data.length();
_out.write(data, 0, length);
InputStreamReader _in = new InputStreamReader(conn.openInputStream());
char[] input = new char[length];
for ( int i = 0; i < length; ++i ) {
input[i] = (char)_in.read();
};
6. 在输入流、输出流和套接字连接上调用close()。每个close()都可能抛出IOException。确保黑莓设备应用程序实现了异常处理。
_in.close();
_out.close();
conn.close();
- 黑莓核心开发向导 - 2.2.3 使用套接字连接
- 黑莓核心开发向导 - 2.2.2 使用HTTPS连接
- 黑莓核心开发向导 - 2.2.4 使用数据报连接
- 黑莓核心开发向导 - 2.2.5 使用USB或串口连接
- 黑莓核心开发向导 - 2.2.1 使用HTTP认证
- 黑莓开发
- 连接到套接字
- 监听套接字 连接套接字
- 监听套接字 连接套接字
- 监听套接字 连接套接字
- 监听套接字 连接套接字
- 监听套接字 连接套接字
- 监听套接字 连接套接字
- 使用 Eclipse 向导进行快速开发
- 使用 Eclipse 向导进行快速开发
- 面向连接的套接字
- 12.4.1 套接字连接
- 第十五章 套接字连接
- 黑莓核心开发向导 - 2.2.2 使用HTTPS连接
- Reading Notes on NS2(2)
- Oracle用户名更改操作四步走
- i@Beijing 新版本上线!
- 今天所学!
- 黑莓核心开发向导 - 2.2.3 使用套接字连接
- EL--1
- [技术学习]ATL CAtlRegExp,GRETA,Boost::regex三类正则表达式库简介
- RHEL 5 kickstart启用软件包选择功能
- 字符与编码的学习与总结
- RasDial的返回错误代码大全
- 互联网名词辨析:“顶”与“踩”
- oracle中实现递归查询的SQL(connect by prior)
- 哪些菜不能一起吃