专注于blackberry » SB应用(1) HTTP连接

      专注于Blackberry

SB应用(1) HTTP连接

Taigoo 发表于 August 6, 2009 10:37 pm

版权信息 :严禁转载, 若想推荐或收藏,请用链接的形式.

网址:http://www.36sign.com/bb/web/development/week-tech/http-connection-via-s.html

前面已经写了一篇关于Service book的入门文章,请参看文章《每周一技: ServiceBook初探

本文将介绍Service Book的第一个应用:HTTP连接,希望能够起到抛砖引用的功能。

大家都知道,用Blackberry上网是玩家必会的一个项目,但有时很难在cmnet,cmwap,wifi间选择。特别是WIFI,在当前的Internet环境里绝对是便利的,速度快,而且省流量。这里就引出一个问题,如何使用这些东东启动HTTP连接呢?

,本文只讲解HTTP,如果您要使用HTTPS,Socket请参看其他,其实原理都是类似。

其实很简单,首先,需要判断您的Blackberry手机是否支持这些东西。

先看以下代码:

public void makeHttp () {
		 ServiceBook sb = ServiceBook.getSB();
         ServiceRecord[] srs = sb.getRecords();

         for(int index = srs.length - 1; index >= 0; --index) {
        	 String uid = srs[index].getUid().toLowerCase();
             if( uid.equalsIgnoreCase( "wap2 tans" )) {
                //add your code here
             } else if( uid.equalsIgnoreCase("s tcp_wfi")) {
            	//add your code here
             }
         }

	}

这里判断是否有WIFI以及wap,主要是根据service book来判断。

有了这些如何连接呢?请看以下代码:

  • wifi
(StreamConnection)Connector.open
   “http://www.google.com;interface=wifi”);

注意后面的interface=wifi

  • cmnet
  • cmwap
  • 这个又得分wap1.x或wap2.x,如果是wap1.x,cmnet和cmwap可以为

    (HttpConnection)Connector.open
       (“http://wap.google.com
       WAPGatewayIP=127.0.0.1;WAPGatewayAPN=cmnet/cmwap”);

    如果是wap2.x,可以为

      Connector.open( "http://wap.google.com;ConnectionUID=" + cmnet/cmwap);

以上基本上介绍了如何利用cmwap,cmnet,wifi如何上网,其实代码非常简单了,不做具体解释了。

上面的文章基本上可以回答这几天网友问的问题了,所以我就不再做出答复了,看看这篇文章足矣。

在未来几篇文章里,介绍如何通过bes/bis上网,而且如何获取APN信息,这些也很有用。

相关文章:

  1. 每周一技: ServiceBook初探
  2. BlackBerry 应用程序开发者指南 第一卷:基础–第7章 使用数据报(Datagram)连接
  3. BlackBerry 应用程序开发者指南 第一卷:基础–第6章 连接网络
  4. 每周一技:从BES服务器上lookup联系人
  5. BlackBerry 应用程序开发者指南 第二卷:高级–第10章 访问安装和配置信息



3 个评论 »

1.   kyle 发表于 September 14,2009 21:33:47

你好,我有个问题想咨询哈,
我的是8320 应该是软解 t-mobile代工的哇

wifi能搜索到路由,公司的,确获取不到ip

无法连接到ap。。。

烦请你分析一下哈。

2.   cilyce 发表于 October 17,2009 21:28:41

这里有一点需要注意,特别是使用http和socket连接,如果你的终端已经激活,必须指定deviceside=true这个参数,因为调用Connector.open()这个方法时默认使用deviceside=false,也就是说你所打开的连接默认使用ippp记录进行连接,有可能导致你的客户端不能连接到指定的url,比如如飞信、qq。

3.   云子 发表于 September 3,2010 10:21:22

看了您的文章 很羡慕 请问能跟您交流一下 请教如何编辑SB么

本文评论的RSS · TrackBack URI

发表评论