2010-02-01 4257 views
32

我想基於android.I藍牙操作創建一個應用程序正在使用下面的代碼如何在Android模擬器中使用藍牙?

BluetoothAdapter adapter=BluetoothAdapter.getDefaultAdapter(); 

適配器返回空值,這意味着Android模擬器是不是有藍牙功能。我正在使用android 2.1最新版本的android.Anybody知道如何從android模擬器使用藍牙,請幫助我。

+0

這個答案似乎工作.... http://stackoverflow.com/ a/22604411/1285325 – 130nk3r5 2015-02-26 06:01:39

回答

45

你不能。仿真器不支持藍牙,如SDK的文檔和其他幾個地方所述。

你已經發現了這個自己:「適配器返回空值,這意味着Android模擬器是不是有藍牙功能」

1

是的,我同意,現在的仿真器不支持藍牙。

要編譯啓用藍牙支持的Android,請將以下行添加到BoardConfig.mk

BOARD_HAVE_BLUETOOTH := true 
16

您可以從http://www.android-x86.org/安裝映像到虛擬機(如VMWare的),找出它的IP地址,手動連接使用

adb connect <IP of VM> 

然後通過設置啓動從Eclipse中的項目「手動「調試/運行配置中的部署目標。至少在我的Macbook上,藍牙可以在這臺虛擬機上工作,據報道它可以與其他一些藍牙芯片組一起工作。

+0

如果我要將藍牙適配器連接到我的系統,有什麼方法可以通過它來使用藍牙? – 2014-12-24 10:12:21

+0

如果你有一個USB加密狗,並確保它通過並連接到虛擬機,我會認爲它的工作原理,是的。 – drott 2014-12-25 10:31:50

1

Q. Bluetooth doesn't work on my device. How should I debug?

A.第一步 - 讀取日誌(adb logcat)!特別尋找有關藍牙的錯誤或警告級別消息。

Andoird使用Bluez,它帶有一些非常有用的調試工具。這裏有一些例子,按照我用來調試BT的粗略順序。

hciconfig -a # print BT chipset address and features. Useful to 
# check if you can communicate with your BT chipset. 

hcidump -XVt # print live HCI UART traffic. 
hcitool scan # scan for local devices. Useful to check if RX/TX works. 
l2ping ADDRESS # ping another BT device. Useful to check if RX/TX works. 
sdptool records ADDRESS # request the SDP records of another BT device. 

您可以從http://www.android-videos.blogspot.com/一旦安裝完成後,您可以使用藍牙與模擬器安裝藍牙插件。

+7

鏈接到視頻沒有藍牙插件的鏈接。 – JPM 2011-05-17 20:10:01

+3

-1錯誤的鏈接(在網站上找不到插件)。 – 2014-02-19 01:25:08

2

在emulator上運行bluetooth aap是不可能的,因爲在仿真器上不支持藍牙。看看這個​​模擬器限制

在此版本中,仿真器的限制包括:

  • 用於撥打或接聽實際電話不支持。但是,您可以通過模擬器 控制檯模擬電話(置入和接收)。
  • 不支持USB連接
  • 不支持相機/視頻捕捉(輸入)。
  • 用於設備連接的耳機
  • 用於確定連接狀態不支持不支持
  • 用於確定電池的充電水平和AC充電狀態
  • 用於確定SD卡插入不支持不支持/彈出
  • 不支持對於藍牙
4

我目前正在計劃一個能夠在Linux下模擬TCP/IP上的藍牙的工具(將在GPL下自由發佈)。

這應該是沒有真正的藍牙設備時的解決方案(例如,您想模擬兩個仿真的Android-x86或Linux機器之間的連接)。

也許在編譯Linux-ARM而不是Linux-x86時,它也會在模擬器中運行。

0

模擬器不支持藍牙,如sdk的文檔中所述。你必須在真實的​​設備上檢查這個..

而你有錯誤藍牙聯編程序爲空。這意味着模擬器沒有藍牙功能。

1

你可以但你需要在一個VirtualBox或VMWare鏡像裏的Android上運行你的應用程序。欲瞭解更多相關信息,請點擊這裏(教程是爲藍牙LE,但它的工作原理一樣的與其它藍牙版本):Bluetooth Low Energy on Android Emulator