WEB开发网
开发学院WEB开发Jsp 检测支持蓝牙功能(JSR 82)的移动电话 阅读

检测支持蓝牙功能(JSR 82)的移动电话

 2008-01-05 08:49:26 来源:WEB开发网   
核心提示:本例讲述如何检测支持蓝牙的移动电话,同时还介绍如何搜索蓝牙手机上提供的服务,检测支持蓝牙功能(JSR 82)的移动电话,可以从这里下载代码,SonyEriCSSon java 平台5版本以上都支持了蓝牙功能,就可以开始搜索设备上提供的服务了,代码如下所示:LocalDevice localDevice = LocalD

本例讲述如何检测支持蓝牙的移动电话,同时还介绍如何搜索蓝牙手机上提供的服务。可以从这里下载代码。

SonyEriCSSon java 平台5版本以上都支持了蓝牙功能,包括K750, K600, W800, Z520 and W810等。想要检测手机是否支持蓝牙功能可以使用下面的代码:

try{
   Class.forName("javax.bluetooth.LocalDevice");
}
catch(Exception ex){
   System.out.PRintln("No support for JSR-82");
}

可以使用DiscoveryAgent开始搜索支持蓝牙的移动电话:

 LocalDevice localDevice = LocalDevice.getLocalDevice();

discoveryAgent = localDevice.getDiscoveryAgent();
discoveryAgent.startInquiry(DiscoveryAgent.GIAC, this);

假如发现了移动电话的时候,deviceDiscoverd()方法会被调用。

 public void deviceDiscovered(RemoteDevice remoteDevice, DeviceClass cod) {
     try{
       remoteDevices.addElement(remoteDevice);
     } catch(Exception e){
         e.printStackTrace();
     }

}

发现了移动电话设备之后,就可以开始搜索设备上提供的服务了,代码如下所示:

LocalDevice localDevice = LocalDevice.getLocalDevice();
DiscoveryAgent discoveryAgent = localDevice.getDiscoveryAgent();
discoveryAgent.searchServices(attrSet, uuidSet, remoteDevice, this);

当有服务被搜索到的时候,方法servicesDiscovered()方法会被调用。

 public void servicesDiscovered(int transID, ServiceRecord[] servRecord) {

   for(int i = 0; i < servRecord.length; i++) {

     DataElement serviceNameElement =
 servRecord[i].getAttributeValue(0x0100);
         String temp_serviceName =
 (String)serviceNameElement.getValue();

       String serviceName = temp_serviceName.trim();
     }
}

原文地址http://developer.sonyericsson.com/site/global/techsupport/tipstrickscode/java/p_bluetooth_probe_jsr82.jsp


Tags:检测 支持 蓝牙

编辑录入:爽爽 [复制链接] [打 印]
赞助商链接