Android 中文API (65) —— BluetoothClass[藍芽]

來源:互聯網
上載者:User

 

前言

  本章內容是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藍芽這篇文章已經有被轉載,這裡做了整理並簡單的審核了一下,補充了少數幾處漏翻的部分,再次感謝他們!

 

 

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.