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

王朝html/css/js·作者佚名  2008-05-31
窄屏简体版  字體: |||超大  

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

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

 
 
 
免责声明:本文为网络用户发布,其观点仅代表作者个人观点,与本站无关,本站仅提供信息存储服务。文中陈述内容未经本站证实,其真实性、完整性、及时性本站不作任何保证或承诺,请读者仅作参考,并请自行核实相关内容。
 
 
© 2005- 王朝網路 版權所有 導航