blackberry--黑莓联网开发各种联网模板型 (续)
来源:互联网 发布:淘宝互粉群qq群 编辑:程序博客网 时间:2024/05/18 00:56
续上一篇的一半连接网络方式,这篇用blackberry官方的服务定制API(Service Book API)开发连接网络:
参看net.rim.device.api.servicebook的API,服务定制由服务记录组成,每个服务定义一个blackberry设备上有效的服务。
注:使用服务定制API是需要官方签名工具签名的
实例代码:
private void initializeTransportAvailability() {
ServiceBook sb = ServiceBook.getSB();
ServiceRecord[] records = sb.getRecords();
for (int i = 0; i < records.length; i++) {
ServiceRecord myRecord = records[i];
String cid, uid;
if (myRecord.isValid() && !myRecord.isDisabled()) {
cid = myRecord.getCid().toLowerCase();
uid = myRecord.getUid().toLowerCase();
// BIS
if (cid.indexOf("ippp") != -1 && uid.indexOf("gpmds") != -1) {
srBIS = myRecord;
}
// BES
if (cid.indexOf("ippp") != -1 && uid.indexOf("gpmds") == -1) {
srMDS = myRecord;
}
// WiFi
if (cid.indexOf("wptcp") != -1 && uid.indexOf("wifi") != -1) {
srWiFi = myRecord;
}
// Wap1.0
if (getConfigType(myRecord)==CONFIG_TYPE_WAP && cid.equalsIgnoreCase("wap")) {
srWAP = myRecord;
}
// Wap2.0
if (cid.indexOf("wptcp") != -1 && uid.indexOf("wifi") == -1 && uid.indexOf("mms") == -1) {
srWAP2 = myRecord;
}
// Unite
if(getConfigType(myRecord) == CONFIG_TYPE_BES && myRecord.getName().equals(UNITE_NAME)) {
srUnite = myRecord;
}
}
}
if(CoverageInfo.isCoverageSufficient(CoverageInfo.COVERAGE_BIS_B)){
coverageBIS=true;
bisHTTPLog.addlog("Coverage Status: Online");
}
if(CoverageInfo.isCoverageSufficient(CoverageInfo.COVERAGE_DIRECT)){
coverageTCP=true;
tcpHTTPLog.addlog("Coverage Status: Online");
coverageWAP=true;
wapHTTPLog.addlog("Coverage Status: Online");
coverageWAP2=true;
wap2HTTPLog.addlog("Coverage Status: Online");
}
if(CoverageInfo.isCoverageSufficient(CoverageInfo.COVERAGE_MDS)) {
coverageMDS=true;
mdsHTTPLog.addlog("Coverage Status: Online");
coverageUnite=true;
uniteHTTPLog.addlog("Coverage Status: Online");
}
if(WLANInfo.getWLANState()==WLANInfo.WLAN_STATE_CONNECTED){
coverageWiFi = true;
wifiHTTPLog.addlog("Coverage Status: Online");
}
}
一段连接WAP2.0的代码:
ServiceBook sb = ServiceBook.getSB();
ServiceRecord[] records = sb.findRecordsByCid("WPTCP");
String uid = null;
for(int i=0; i < records.length; i++)
{
//Search through all service records to find the
//valid non-Wi-Fi and non-MMS
//WAP 2.0 Gateway Service Record.
if (records[i].isValid() && !records[i].isDisabled())
{
if (records[i].getUid() != null && records[i].getUid().length() != 0)
{
if ((records[i].getUid().toLowerCase().indexOf("wifi") == -1) &&
(records[i].getUid().toLowerCase().indexOf("mms") == -1))
{
uid = records[i].getUid();
break;
}
}
}
}
if (uid != null)
{
//open a WAP 2 connection
Connector.open(_url + ";ConnectionUID=" + uid);
}
else
{
//Consider another transport or alternative action.
}
需要详细资料请查看:
1、What is - Network Diagnostic Tool:
http://www.blackberry.com/knowledgecenterpublic/livelink.exe/fetch/2000/348583/800451/800563/What_Is_-_Network_Diagnostic_Tool.html?nodeid=1450596&vernum=0
2、RIM BlackBerry Service Book Definitions:
https://www.wireless.att.com/support_static_files/KB/KB49057.html
- blackberry--黑莓联网开发各种联网模板型 (续)
- blackberry--黑莓联网开发各种联网模板型
- 黑莓BlackBerry应用程序开发指南
- 联网
- BlackBerry上联网的五种方式
- blackberry平台联网策略与实现
- [下载]黑莓BlackBerry开发官方文档系列
- [黑莓开发之路][01][黑莓开发平台介绍][02][BlackBerry Browser Development][黑莓浏览器开发]
- 开发J2ME联网应用程序
- 开发MIDP联网应用程序
- 开发J2ME联网应用程序
- 车联网开发
- 初识物联网开发
- 物联网开发路线
- [黑莓开发之路][00][BlackBerry平台架构概述][01][BlackBerry Enterprise Solution][黑莓企业解决方案]
- [黑莓开发之路][00][BlackBerry平台架构概述][02][BlackBerry Enterprise Server][黑莓企业服务器]
- [黑莓开发之路][00][BlackBerry平台架构概述][04][BlackBerry Internet Service][黑莓网络服务]
- 使用Eclipse和BlackBerry JDE开发黑莓应用程序
- Oracle数据库学习总结--spool
- flex 中实现自定义滚动
- 宏:va_list、va_start、va_arg、va_end的使用
- 动态密码 - 硬件令牌 dKey T6
- 忙碌的岁末年初
- blackberry--黑莓联网开发各种联网模板型 (续)
- 动态密码 - 短信密码 dKey S6
- Delphi键盘按键伪码
- 你可以看透任何人----读书笔记
- SetWindowExt和SetViewportExt
- 魔兽世界任务分类及游戏任务系统设计启示
- 手机令牌 dKey M6介绍
- Eclipse开发:了解RCP应用的实现
- 图片IMG标记的alt属性和title属性(转)