BluetoothClass

译者署名: Android Club SYSU

译者链接:http://www.android-wiki.net 

版本:Android 2.3 r1

 

结构

继承关系

public final class BluetoothClass extends Object implements Parcelable

        

java.lang.Object

android.bluetooth.BluetoothClass

 

类概述

代表一个描述了设备通用特性和功能的蓝牙类。比如,一个蓝牙类会指定皆如电话、计算机或耳机的通用设备类型,可以提供皆如音频或者电话的服务。

每个蓝牙类都是有0个或更多的服务类,以及一个设备类组成。设备类将被分解成主要和较小的设备类部分。

BluetoothClass 用作一个能粗略描述一个设备(比如关闭用户界面上一个图标的设备)的线索,但当蓝牙服务事实上是被一个设备所支撑的时候,BluetoothClass的 介绍则不那么可信任。精确的服务搜寻通过SDP请求来完成。当运用createRfcommSocketToServiceRecord(UUID) listenUsingRfcommWithServiceRecord(String, UUID)来创建RFCOMM端口的时候,SDP请求就会自动执行。

使用getBluetoothClass()方法来获取为远程设备所提供的类。

 

内部类

         class        BluetoothClass.Device  

定义所有设备类的常量

 

class        BluetoothClass.Service

定义所有服务类的常量

 

公共方法

         public int describeContents ()

描述包含在可封装编组的表示中所有特殊对象的种类。

        返回值

            一个指示被Parcelabel所排列的特殊对象类型集合的位掩码。

   

    public boolean equals (Object o)

    比较带有特定目标的常量。如果他们相等则标示出来。 为了保证其相等,o必须代表相同的对象,该对象作为这个使用类依赖比较的常量。通常约定,该比较既要可移植又需灵活。

当且仅当o是一个作为接收器(使用==操作符来做比较)的精确相同的对象是,这个对象的实现才返回true值。子类通常实现equals(Object)方法,这样它才会重视这两个对象的类型和状态。

通常约定,对于equals(Object)hashCode() 方法,如果equals对于任意两个对象返回真值,那么hashCode()必须对这些对象返回相同的纸。这意味着对象的子类通常都覆盖或者都不覆盖这两个方法。

    参数

        o   需要对比常量的对象

    返回值

        如果特定的对象和该对象相等则返回true,否则返回false

 

public int getDeviceClass ()

返回BluetoothClass中的设备类部分(主要的和较小的)

从函数中返回的值可以和在BluetoothClass.Device中的公共常量做比较,从而确定哪个设备类在这个蓝牙类中是被编码的。

返回值

    设备类部分

 

    public int getMajorDeviceClass ()

    返回BluetoothClass中设备类的主要部分

从函数中返回的值可以和在BluetoothClass.Device.Major中的公共常量做比较,从而确定哪个主要类在这个蓝牙类中是被编码的。

返回值

主要设备类部分

 

    public boolean hasService (int service)

         如果该指定服务类被BluetoothClass所支持,则返回true

BluetoothClass.Service中,合法的服务类是公共常量,比如AUDIO类。

参数

service 合法服务类

返回值

如果该服务类可被支持,则返回true

 

    public int hashCode ()

         返回这个对象的整型哈希码。按约定,任意两个在equals(Object)中返回true的对象必须返回相同的哈希码。这意味着对象的子类通常通常覆盖或者都不覆盖这两个方法。

注意:除非同等对比信息发生改变,否则哈希码不随时间改变而改变。

如果你想要实现你自己的哈希码方法,参见Writing a correct hashCode method

返回值

该对象的哈希码

 

    public String toString ()  

返回这个对象的字符串,该字符串包含精确且可读的介绍。系统鼓励子类去重写该方法,并且提供了能对该对象的类型和数据进行重视的实现方法。默认的实现方法只是简单地把类名、“@“符号和该对象hashCode()方法的16进制数连接起来(如下列所示的表达式):

如果你想实现你自己的toString方法,参见Writing a useful toString method

返回值

该对象中一个可被打印的字符串。

 

    public void writeToParcel (Parcel out, int flags)

         将类的数据写入外部提供的Parcel

        参数

out     对象需要被写入的Parcel

flags   和对象需要如何被写入有关的附加标志。可能是0,或者可能是PARCELABLE_WRITE_RETURN_VALUE