編輯:Android開發實例
從Android 2.0開始提供最全面的藍牙開發接口,API Level為5的系統才能調用,目前Android Bluetooth API包含了主要以下幾類:BluetoothAdapter
BluetoothDevice、BluetoothSocket 、BluetoothServerSocket 和BluetoothClass 它們均在android.bluetooth這個包中出現。
我們調用時除了需要考慮API Level至少為5外,還需注意添加相應的權限,比如使用通訊需要在androidmanifest.xml加入<uses-permission android:name="android.permission.BLUETOOTH" />,而開關藍牙需要android.permission.BLUETOOTH_ADMIN權限。
三、建立通訊 establishing
對於建立一個藍牙通訊,必須經過以下四個步驟:獲取本地藍牙設備、查找遠程設備、配對(已配對設備將會忽略這步的細節)、連接設備和傳輸數據.
在Android平台中首先我們需要查找本地活動的藍牙適配器,通過BluetoothAdapter類的getDefaultAdapter() 方法獲得一個系統默認可用的藍牙設備,示例代碼如下
BluetoothAdapter cwjBluetoothAdapter = BluetoothAdapter.getDefaultAdapter();
if (cwjBluetoothAdapter == null) {
// Android開發網提示大家本機沒有找到藍牙硬件或驅動存在問題
}
當然有了這步仍然不能建立連接,因為我們還不知道手機中的藍牙功能是否被開啟,可以通過cwjBluetoothAdapter的.isEnabled方法來判斷,如果沒有開啟,我們可以通過下面的代碼提醒用戶啟用:
if (!cwjBluetoothAdapter.isEnabled()) {
Intent TurnOnBtIntent = new Intent(BluetoothAdapter.ACTION_REQUEST_ENABLE);
startActivityForResult(TurnOnBtIntent, REQUEST_ENABLE_BT);
}
這時用戶會收到類似下面的窗口:
我們通過startActivityForResult()方法發起的Intent將會在onActivityResult()回調方法中獲取用戶的選擇,比如用戶單擊了Yes開啟,那麼將會收到RESULT_OK 的結果,如果RESULT_CANCELED則代表用戶不願意開啟藍牙,當然android123提醒大家還可以通過其他方式來開啟,比如說用BluetoothDevice獲取藍牙服務接口對象,是用enable()方法來開啟,無需詢問用戶,這時就需要用到android.permission.BLUETOOTH_ADMIN權限。
如何判斷系統藍牙的狀態呢? 建立BroadcastReceiver對象,接收ACTION_STATE_CHANGED動作,在EXTRA_STATE和EXTRA_PREVIOUS_STATE包含了現在狀態和過去的狀態,最終的結果定義是STATE_TURNING_ON正在開啟, STATE_ON已經開啟, STATE_TURNING_OFF正在關閉和 STATE_OFF已經關閉,如果有什麼不明白的可以在我們的論壇中交流。
Android應用程序可以在許多不同地區的許多設備上運行。為了使應用程序更具交互性,應用程序應該處理以適合應用程序將要使用的語言環境方面的文字,數字,文件等。在本章中,我
可以顯示在的Android任務,通過加載進度條的進展。進度條有兩種形狀。加載欄和加載微調(spinner)。在本章中,我們將討論微調(spinner)。Spinner 用
可以顯示在的Android任務,通過加載進度條的進展。進度條有兩種形狀。加載欄和加載微調(spinner)。在本章中,我們將討論微調(spinner)。Spinner 用
本文實例講述了Android編程實現圓角邊框的方法。分享給大家供大家參考,具體如下: 設置邊框圓角可以在drawable-mdpi目錄裡定義一個xml: &l