zoukankan      html  css  js  c++  java
  • Android 中文API (65) —— BluetoothClass[蓝牙]

    前言

      本章内容是android.bluetooth.BluetoothClass,为Android蓝牙部分的章节翻译。用于描述远端设备的类型,特点等信息,通过getBluetoothClass()方法获取代表远端设备属性的BluetoothClass对象。版本为Android 2.3 r1,翻译来自中山大学的"Android Club SYSU",欢迎访问他们的WIKI:http://www.android-wiki.net,再次感谢"Android Club SYSU"!期待你一起参与Android中文API的翻译,联系我 over140@gmail.com。

    声明

      欢迎转载,但请保留文章原始出处:)

        Android Club SYSU:http://www.android-wiki.net

        博客园:http://www.cnblogs.com/

        Android中文翻译组:http://code.taobao.org/project/view/404/

    正文

      一、结构

    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

    结束

      关于Android蓝牙这篇文章已经有被转载,这里做了整理并简单的审核了一下,补充了少数几处漏翻的部分,再次感谢他们!

     
  • 相关阅读:
    clip-path
    box-reflect
    循环内click赋值跳转
    github pages 不能识别下划线开头的文件
    Telerik Reporting
    VS2015项目发布失败且没有错误提示
    kendo grid 过滤器
    kendo 月份选择
    kendo grid过滤
    odata连接现有数据库
  • 原文地址:https://www.cnblogs.com/over140/p/1911011.html
Copyright © 2011-2022 走看看