5

我有一个三星 Spica i5700,我已经更新到 Android 2.1。我正在将手机与一个名为 Run.GPS ( http://www.rungps.net ) 的应用程序一起使用。此应用程序记录 GPS 位置、路线、速度、方位等数据。如果用户拥有我拥有的 Zephyr HxM 蓝牙心率监测器(“HxM”),它还可以记录心率。

我可以通过标准蓝牙实用程序将 HxM 与手机配对。系统提示我输入 PIN 码,然后设备显示为“已配对但未连接”。

在 Run.GPS 应用程序本身中,我单击“连接心率监视器”。大约 30 秒后超时,错误消息是“无法连接到心率监测器”。请尝试其他设置”。

我使用朋友的 HTC Windows Mobile 作为控制设备来查看 HxM 是否在那里工作。确实如此。Run.GPS 应用程序自动设置波特率(最初设置为 9600 IIRC,尽管连接也可以使用更高的波特率),并且可以在各种 COM 端口和 .Net COM 端口之间进行选择。

我在我的 Spica Android 上做了一些测试,试图找出蓝牙连接不起作用的原因。以下是我在 Run.GPS 应用程序中单击“连接到心率监视器”时通过 adb 连接的一些日志文件。

我会对任何提示感兴趣(包括如果我在这里发错论坛;-)) - 是否可以在 Android 等中试验波特率。我仍然不知道问题是否与Run.GPS 应用程序(我已经在那里的开发论坛上发布过)或 Android 2.1。我查看了另一个应用程序 - Endomondo - 它也是一个运动跟踪应用程序,仅支持 HxM 的心率监测器。在那里,发生了看起来完全相同的错误 - 我点击了“连接 Zephyr HxM”。几秒钟后,我看到了“正在连接...”状态,但随后超时进入“未连接”。因此,我倾向于寻找 Android 来解决这个问题。

这是尝试连接时 adb logcat 的输出

./adb logcat | grep Run.GPS
  D/WYNEX> (11551): Excute :: Run.GPS Trainer UV, (null)
  E/Run.GPS (11997): Cannot connect to BT device
  E/Run.GPS (11997): java.io.IOException: Service discovery failed
  E/Run.GPS (11997): at  android.bluetooth.BluetoothSocket$SdpHelper.doSdp(BluetoothSocket.java:374)
  E/Run.GPS (11997): at android.bluetooth.BluetoothSocket.connect(BluetoothSocket.java:184)
  E/Run.GPS (11997): at ju.a(Unknown Source)
  E/Run.GPS (11997): at qk.j(Unknown Source)
  E/Run.GPS (11997): at fs.c(Unknown Source)
  E/Run.GPS (11997): at le.a(Unknown Source)
  E/Run.GPS (11997): at s.b(Unknown Source)
  E/Run.GPS (11997): at pb.a(Unknown Source)
  E/Run.GPS (11997): at as.a(Unknown Source)
  E/Run.GPS (11997): at am.b(Unknown Source)
  E/Run.GPS (11997): at gf.onTouchEvent(Unknown Source)
  E/Run.GPS (11997): at android.view.View.dispatchTouchEvent(View.java:3709)
  E/Run.GPS (11997): at android.view.ViewGroup.dispatchTouchEvent(ViewGroup.java:884)
  E/Run.GPS (11997): at android.view.ViewGroup.dispatchTouchEvent(ViewGroup.java:884)
  E/Run.GPS (11997): at com.android.internal.policy.impl.PhoneWindow$DecorView.superDispatchTouchEvent(PhoneWindow.java:1665)
  E/Run.GPS (11997): at com.android.internal.policy.impl.PhoneWindow.superDispatchTouchEvent(PhoneWindow.java:1107)
  E/Run.GPS (11997): at android.app.Activity.dispatchTouchEvent(Activity.java:2061)
  E/Run.GPS (11997): at com.android.internal.policy.impl.PhoneWindow$DecorView.dispatchTouchEvent(PhoneWindow.java:1649)
  E/Run.GPS (11997): at android.view.ViewRoot.handleMessage(ViewRoot.java:1694)
  E/Run.GPS (11997): at android.os.Handler.dispatchMessage(Handler.java:99)
  E/Run.GPS (11997): at android.os.Looper.loop(Looper.java:123)
  E/Run.GPS (11997): at android.app.ActivityThread.main(ActivityThread.java:4363)
  E/Run.GPS (11997): at java.lang.reflect.Method.invokeNative(Native Method)
  E/Run.GPS (11997): at java.lang.reflect.Method.invoke(Method.java:521)
  E/Run.GPS (11997): at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:860)
  E/Run.GPS (11997): at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:618)
  E/Run.GPS (11997): at dalvik.system.NativeStart.main(Native Method)
  E/Run.GPS (11997): Cannot connect to BT device
  E/Run.GPS (11997): java.io.IOException: Service discovery failed

这是尝试连接心率监测器时 dmesg 的输出

<4>[74726.239833] select 11691 (.serviceModeApp), adj 15, size 3205, to kill
<4>[74726.240741] select 11739 (com.wssnps), adj 15, size 3207, to kill
<4>[74726.246870] select 11750 (id.partnersetup), adj 15, size 3219, to kill
<4>[74726.253390] select 11857 (p.bluetoothicon), adj 15, size 3299, to kill
<4>[74726.259879] select 13131 (ndroid.settings), adj 15, size 4586, to kill
<4>[74726.266372] send sigkill to 13131 (ndroid.settings), adj 15, size 4586
<7>[74733.945097] [BT] GPIO_BT_WAKE = 1
<7>[74733.945121] [BT] wake_lock(bt_wake_lock)
<7>[74733.951799] [BT] GPIO_BT_HOST_WAKE = 1
<7>[74733.951822] [BT] wake_lock timeout = 5 sec
<7>[74735.890196] [BT] GPIO_BT_HOST_WAKE = 0
<7>[74736.150987] [BT] GPIO_BT_HOST_WAKE = 1
<7>[74736.151009] [BT] wake_lock timeout = 5 sec
<7>[74737.490185] [BT] GPIO_BT_HOST_WAKE = 0
<7>[74740.073913] [BT] GPIO_BT_HOST_WAKE = 1
<7>[74740.073948] [BT] wake_lock timeout = 5 sec
<7>[74741.315336] [BT] GPIO_BT_HOST_WAKE = 0
<7>[74743.249747] [BT] GPIO_BT_HOST_WAKE = 1
<7>[74743.249768] [BT] wake_lock timeout = 5 sec
<7>[74744.865099] [BT] GPIO_BT_HOST_WAKE = 0
<7>[74745.154487] [BT] GPIO_BT_HOST_WAKE = 1
<7>[74745.154509] [BT] wake_lock timeout = 5 sec
<7>[74748.852534] [BT] GPIO_BT_HOST_WAKE = 0
<7>[74749.156256] [BT] GPIO_BT_HOST_WAKE = 1
<7>[74749.156278] [BT] wake_lock timeout = 5 sec
<7>[74750.490018] [BT] GPIO_BT_HOST_WAKE = 0
<4>[74754.230424] select 11691 (.serviceModeApp), adj 15, size 3191, to kill
<4>[74754.231326] select 11739 (com.wssnps), adj 15, size 3193, to kill
<4>[74754.237473] select 11750 (id.partnersetup), adj 15, size 3205, to kill
<4>[74754.243950] select 11857 (p.bluetoothicon), adj 15, size 3283, to kill
<4>[74754.250452] select 13140 (com.svox.pico), adj 15, size 3465, to kill
<4>[74754.256787] send sigkill to 13140 (com.svox.pico), adj 15, size 3465 

这是我在 Endomondo 中单击“连接 zephyr”时的 logcat 输出

I/PUSH Event(19147): MotionEvent : QueuedEvent{43d7d480 MotionEvent{440b5680 action=1 x=228.28438 y=212.55624 pressure=0.0 size=0.0}} 
D/BluetoothZephyrService(23605): connect to: 00:07:80:88:F5:AD
D/BluetoothSocket(23605): BluetoothSocket created fd: -1uuid00001101-0000-1000-8000-00805f9b34fbport -1                     
D/BluetoothSocket.cpp(23605): initSocketNative      
I/BLZ20_WRAPPER(23605): blz20_wrp_socket: fam 31, type 1, prot BTPROTO_RFCOMM                                                      
D/BLZ20_WRAPPER(23605): blz20_init: initializing...       
D/BTL_IFC_WRP(23605): wsactive_init: init active list                                                                          
I/BTL_IFC (23605): main_client_thread: Client main thread starting                                                               
D/BLZ20_WRAPPER(23605): blz20_init: success       
I/BTL_IFC (23605): BTL_IFC_RegisterSubSystem: Register subsystem [(null)]                                                         
I/BTL_IFC (23605): btl_ifc_ctrl_connect: Connect control channel for subsystem [(null)]                                           
D/BTL_IFC_WRP(23605): wrp_sock_create: CTRL 
D/BTL_IFC_WRP(23605): wrp_alloc_new_sock: wrp_alloc_new_sock sub 1                                               
D/BTL_IFC_WRP(23605): wrp_sock_create: 28
D/BTL_IFC_WRP(23605): wrp_sock_connect: wrp_sock_connect 127.0.0.1:9000 (28)                                      
I/BTL-IFS (21889): main_server_thread: [CTRL] Client connected (14)                                               
I/BTL_IFC_WRP(23605): wrp_sock_connect: Connected. (28)                                                           
I/BTL_IFC (23605): send_ctrl_msg: [BTL_IFC CTRL] send BTLIF_REGISTER_SUBSYS_REQ ((null)) 0 pbytes (hdl 28)      
I/BTL-IFS (21889): attach_client: multiclient index 1                                                                       
I/BTL-IFS (21889): attach_client: ######## Attached client subsystem  (14) ########                                                  
I/BTL-IFS (21889): btl_if_notify_local_event: Notify local event BTLIF_SUBSYSTEM_ATTACHED 
D/        (21889): btlif_bts_api_ctrl_cb: btlif_bts_api_ctrl_cb : id BTLIF_SUBSYSTEM_ATTACHED (4112) on hdl 14                 
I/        (21889): btlif_rfc_ctrl_chan_attached: client attached ctrl handle 14                                               
D/BTL-IFS (21889): send_registration_rsp: send_registration_rsp [0]                                                             
I/BTL-IFS (21889): send_ctrl_msg: [BTL_IFS CTRL] send BTLIF_REGISTER_SUBSYS_RSP (CTRL) 2 pbytes (hdl 14)                        
D/BTL_IFC (23605): BTL_IFC_RegisterSubSystem: add new ctrl fd to active set                                                     
D/BTL_IFC_WRP(23605): wrp_wsock_create: (null)     
D/BTL_IFC_WRP(23605): wrp_alloc_new_sock: wrp_alloc_new_sock sub 15                                                            
D/BTL_IFC_WRP(23605): wrp_wsock_create: 32     
D/BLZ20_WRAPPER(23605): btsk_alloc_add: success    
I/BLZ20_WRAPPER(23605): blz20_wrp_socket: return 32                                                                            
D/BLZ20_WRAPPER(23605): blz20_wrp_setsockopt:  fd (-1:32), bta -1, rc 0, wflags 0x0                                                
I/BLZ20_WRAPPER(23605): blz20_wrp_setsockopt: configure rfcomm lm mode 0x26, (master:0, auth 1, enc 1)                       
I/BLZ20_WRAPPER(23605): blz20_wrp_setsockopt: success
D/BLZ20_WRAPPER(23605): blz20_wrp_setsockopt:  fd (-1:32), bta -1, rc 0, wflags 0x0                                            
I/BLZ20_WRAPPER(23605): blz20_wrp_setsockopt: configure rfcomm sndbuf len 71680 bytes                                            
I/BLZ20_WRAPPER(23605): blz20_wrp_setsockopt: success 
D/BluetoothSocket.cpp(23605): ...fd 32 created (RFCOMM, lm = 26)                                                               
D/BluetoothSocket.cpp(23605): initSocketFromFdNative              
D/BluetoothZephyrService(23605): setState() 0 -> 2                                                                              
I/BluetoothZephyrService(23605): BEGIN mConnectThread      
E/BluetoothService.cpp(19147): stopDiscoveryNative: D-Bus error in StopDiscovery: org.bluez.Error.Failed (Invalid discovery session) 
D/BluetoothSocket(23605): connect                  
D/BluetoothSocket(23605): doSdp                 
I/BluetoothService.cpp(19147): ... Object Path = /org/bluez/21902/hci0/dev_00_07_80_88_F5_AD      
I/BluetoothService.cpp(19147): ... Pattern = 00001101-0000-1000-8000-00805f9b34fb, strlen = 36                                 
I/BluetoothZephyr(23605): MESSAGE_STATE_CHANGE: 2                                                                             
D/DEVICE  (21902):     *************DiscoverServices********                         
I/DTUN_HCID(21902): dtun_client_get_remote_svc_channel: starting discovery on  (uuid16=0x0011)                                               
I/DTUN_HCID(21902):    bdaddr=00:07:80:88:F5:AD                     
I/DTUN_CLNT(21902):     Client calling DTUN_METHOD_DM_GET_REMOTE_SERVICE_CHANNEL (id 4)                                       
I/        (21889): DTUN_ReceiveCtrlMsg: [DTUN] Received message [BTLIF_DTUN_METHOD_CALL] 4354                                   
I/        (21889): handle_method_call: handle_method_call :: received DTUN_METHOD_DM_GET_REMOTE_SERVICE_CHANNEL (id 4), len 134 
E/BTLD    (21889): ****************search UUID = 1101***********         
I//system/bin/btld(21888):              btapp_dm_GetRemoteServiceChannel()                              
W/BTLD    (21889): SDP - Rcvd conn cnf with error: 0x4  CID 0x42                                                               
I/BTL-IFS (21889): send_ctrl_msg: [BTL_IFS CTRL] send BTLIF_DTUN_SIGNAL_EVT (CTRL) 13 pbytes (hdl 10)                          
I/DTUN_CLNT(21902): dtun-rx signal [DTUN_SIG_DM_RMT_SERVICE_CHANNEL] (id 42) len 15                                           
I/DTUN_HCID(21902): dtun_dm_sig_rmt_service_channel: success=1, service=00000000                                                          
E/DTUN_HCID(21902): discovery unsuccessful!             
V/BluetoothEventRedirector(21741): Received android.bleutooth.device.action.UUID  
E/CachedBluetoothDevice(21741): onUuidChanged: Time since last connect9266997                                                            
D/BluetoothService(19147): Cleaning up failed UUID channel lookup: 00:07:80:88:F5:AD 00001101-0000-1000-8000-00805f9b34fb                                       
D/BluetoothSocket(23605): onRfcommChannelFound -1                                                                             
D/BluetoothZephyrService(23605): setState() 2 -> 1                                                                             
D/BluetoothSocket(23605): close                
D/BluetoothSocket(23605): cancel            
D/BluetoothSocket.cpp(23605): abortNative         
D/BluetoothSocket.cpp(23605): ...asocket_abort(32) complete                                                                    
D/BluetoothSocket.cpp(23605): destroyNative        
D/BluetoothSocket.cpp(23605): ...asocket_destroy(32) complete                                                                       
D/BluetoothZephyrService(23605): start         
D/BluetoothSocket(23605): close              
D/BluetoothSocket(23605): BluetoothSocket created fd: -1uuidnullport 1                                                   
D/BluetoothSocket.cpp(23605): initSocketNative         
I/BLZ20_WRAPPER(23605): blz20_wrp_socket: fam 31, type 1, prot BTPROTO_RFCOMM                                                           
D/BTL_IFC_WRP(23605): wrp_wsock_create: (null)  
D/BTL_IFC_WRP(23605): wrp_alloc_new_sock: wrp_alloc_new_sock sub 15                                                            
D/BTL_IFC_WRP(23605): wrp_wsock_create: 32  
D/BLZ20_WRAPPER(23605): btsk_alloc_add: success    
D/BLZ20_WRAPPER(23605): btsk_dump_list:  fd (-1:32), bta -1, rc 0, wflags 0x0                                                
I/BLZ20_WRAPPER(23605): blz20_wrp_socket: return 32                                                                             
E/BLZ20_WRAPPER(23605): ##### ERROR : btsk_check_duplicates: WARNING : duplicate entries found for key 4, val 32#####          
D/BLZ20_WRAPPER(23605): btsk_check_duplicates:  fd (-1:32), bta -1, rc 0, wflags 0x0                                        
D/BLZ20_WRAPPER(23605): btsk_check_duplicates:  fd (-1:32), bta -1, rc 0, wflags 0x0                                          
E/BLZ20_WRAPPER(23605): ##### ERROR : btsk_check_duplicates: ### ASSERT : frameworks/base/core/jni/../../../../vendor/brcm/adaptation/btl-if/client/blz20_wrapper.c line 534 duplicates found (2) ########     
D/BLZ20_WRAPPER(23605): blz20_wrp_setsockopt:  fd (-1:32), bta -1, rc 0, wflags 0x0                                        
I/BLZ20_WRAPPER(23605): blz20_wrp_setsockopt: configure rfcomm lm mode 0x26, (master:0, auth 1, enc 1)                       
I/BLZ20_WRAPPER(23605): blz20_wrp_setsockopt: success  
E/BLZ20_WRAPPER(23605): ##### ERROR : btsk_check_duplicates: WARNING : duplicate entries found for key 4, val 32#####           
D/BLZ20_WRAPPER(23605): btsk_check_duplicates:  fd (-1:32), bta -1, rc 0, wflags 0x0                                           
D/BLZ20_WRAPPER(23605): btsk_check_duplicates:  fd (-1:32), bta -1, rc 0, wflags 0x0                                          
E/BLZ20_WRAPPER(23605): ##### ERROR : btsk_check_duplicates: ### ASSERT : frameworks/base/core/jni/../../../../vendor/brcm/adaptation/btl-if/client/blz20_wrapper.c line 534 duplicates found (2) ########     
D/BLZ20_WRAPPER(23605): blz20_wrp_setsockopt:  fd (-1:32), bta -1, rc 0, wflags 0x0                                           
I/BLZ20_WRAPPER(23605): blz20_wrp_setsockopt: configure rfcomm sndbuf len 71680 bytes                                          
I/BLZ20_WRAPPER(23605): blz20_wrp_setsockopt: success 
D/BluetoothSocket.cpp(23605): ...fd 32 created (RFCOMM, lm = 26)                                                        
D/BluetoothSocket.cpp(23605): initSocketFromFdNative         
D/BluetoothSocket(23605): bindListen                    
D/BluetoothSocket.cpp(23605): bindListenNative                 
I/BLZ20_WRAPPER(23605): blz20_wrp_bind: s 32   
E/BLZ20_WRAPPER(23605): ##### ERROR : btsk_check_duplicates: WARNING : duplicate entries found for key 4, val 32#####           
D/BLZ20_WRAPPER(23605): btsk_check_duplicates:  fd (-1:32), bta -1, rc 0, wflags 0x0                                           
D/BLZ20_WRAPPER(23605): btsk_check_duplicates:  fd (-1:32), bta -1, rc 0, wflags 0x0                                           
E/BLZ20_WRAPPER(23605): ##### ERROR : btsk_check_duplicates: ### ASSERT : frameworks/base/core/jni/../../../../vendor/brcm/adaptation/btl-if/client/blz20_wrapper.c line 534 duplicates found (2) ########     
D/BLZ20_WRAPPER(23605): blz20_wrp_bind: bind socket fd (-1:32), bta -1, rc 0, wflags 0x0                                       
D/BLZ20_WRAPPER(23605): __bind_prot_rfcomm: rc_chan 1                                                                       
D/BTL_IFC_WRP(23605): wrp_sock_bind: wrp_sock_bind on port 9050                                                             
I/BLZ20_WRAPPER(23605): blz20_wrp_listen: s 32, backlog 1                                                                      
E/BLZ20_WRAPPER(23605): ##### ERROR : btsk_check_duplicates: WARNING : duplicate entries found for key 4, val 32#####            
D/BLZ20_WRAPPER(23605): btsk_check_duplicates:  fd (-1:32), bta -1, rc 1, wflags 0x0                                         
D/BLZ20_WRAPPER(23605): btsk_check_duplicates:  fd (-1:32), bta -1, rc 0, wflags 0x0                                        
E/BLZ20_WRAPPER(23605): ##### ERROR : btsk_check_duplicates: ### ASSERT : frameworks/base/core/jni/../../../../vendor/brcm/adaptation/btl-if/client/blz20_wrapper.c line 534 duplicates found (2) ########     
D/BLZ20_WRAPPER(23605): blz20_wrp_listen:  fd (-1:32), bta -1, rc 1, wflags 0x0                                             
D/BLZ20_WRAPPER(23605): btlif_send_msg_wait_response: send BTLIF_BTS_RFC_LISTEN_REQ, wait for |BTLIF_BTS_RFC_LISTEN_RSP|                           
D/BTL_IFC (23605): BTL_IFC_CtrlSend: BTL_IFC_CtrlSend    
I/BTL_IFC (23605): send_ctrl_msg: [BTL_IFC CTRL] send BTLIF_BTS_RFC_LISTEN_REQ ((null)) 20 pbytes (hdl 28)                    
D/        (21889): btlif_bts_api_ctrl_cb: btlif_bts_api_ctrl_cb : id BTLIF_BTS_RFC_LISTEN_REQ (4433) on hdl 14                  
I/        (21889): btlif_rfc_listen_req: Allocated dynamic server channel 4                                                  
D/        (21889): bts_chan_alloc_add: bts_chan_alloc_add : success (tot 1)                                                   
D/        (21889): bts_chan_dump_all: ### channel list ###                                                                       
D/        (21889): bts_chan_dump_all:  type 3, dhdl -1, bta_hdl -1, scn -1, phdl 65535, lstpnd 0, -1:-1 (L:D)
I/        (21889): btlif_rfc_listen_req: start rfcomm server on scn 4, role 1, sec_mask 0x30
D/        (21889): jw_if_rfcomm_srv_cback: event=BTA_JV_RFCOMM_START_EVT
I/        (21889): jw_if_rfcomm_srv_cback: [BTA_JV_RFCOMM_START_EVT] start status: 0, handle:0, security id: 47
I/        (21889): jv_rfc_srv_listen_started: jv_rfc_srv_listen_started
I/BTL-IFS (21889): send_ctrl_msg: [BTL_IFS CTRL] send BTLIF_BTS_RFC_LISTEN_RSP () 17 pbytes (hdl 14)
I/BTL_IFC (23605): btl_ifc_ctrl_rx: [BTL_IFC CTRL] recv BTLIF_BTS_RFC_LISTEN_RSP ((null)) 19 pbytes (hdl 28)
I/BLZ20_WRAPPER(23605): btlif_ctrl_callback: btlif_ctrl_callback : msg id BTLIF_BTS_RFC_LISTEN_RSP
E/BLZ20_WRAPPER(23605): ##### ERROR : btsk_check_duplicates: WARNING : duplicate entries found for key 4, val 32#####
D/BLZ20_WRAPPER(23605): btsk_check_duplicates:  fd (-1:32), bta -1, rc 1, wflags 0x2
D/BLZ20_WRAPPER(23605): btsk_check_duplicates:  fd (-1:32), bta -1, rc 0, wflags 0x0
E/BLZ20_WRAPPER(23605): ##### ERROR : btsk_check_duplicates: ### ASSERT : frameworks/base/core/jni/../../../../vendor/brcm/adaptation/btl-if/client/blz20_wrapper.c line 534 duplicates found (2) ########
I/BLZ20_WRAPPER(23605): btlif_process_listen_rsp: listen response for bta hdl 0
D/BLZ20_WRAPPER(23605): btlif_signal_event:  fd (-1:32), bta 0, rc 1, wflags 0x2
D/BLZ20_WRAPPER(23605): btlif_signal_event: event BTLIF_BTS_RFC_LISTEN_RSP matched
D/BLZ20_WRAPPER(23605): btlif_send_msg_wait_response: unblocked fd (-1:32), bta 0, rc 1, wflags 0x0
I/BLZ20_WRAPPER(23605): __listen_prot_rfcomm: success, scn 4
D/BTL_IFC_WRP(23605): wrp_sock_listen_bl: wrp_sock_listen_bl : fd 32 127.0.0.1:9050 backlog 1
I/BLZ20_WRAPPER(23605): __listen_prot_rfcomm: success
D/BluetoothSocket.cpp(23605): ...bindListenNative(32) success
I/DTUN_CLNT(21902):     Client calling DTUN_METHOD_DM_ADD_SDP_REC (id 17)
I/        (21889): DTUN_ReceiveCtrlMsg: [DTUN] Received message [BTLIF_DTUN_METHOD_CALL] 4354
I/        (21889): handle_method_call: handle_method_call :: received DTUN_METHOD_DM_ADD_SDP_REC (id 17), len 270
I/        (21889): btapp_bts_convert_rc_chan_to_scn: found scn 4
I/BTL-IFS (21889): send_ctrl_msg: [BTL_IFS CTRL] send BTLIF_DTUN_SIGNAL_EVT (CTRL) 12 pbytes (hdl 10)
I/DTUN_CLNT(21902): dtun-rx signal [DTUN_SIG_DM_SDP_REC_HANDLE] (id 50) len 14
I/DTUN_HCID(21902): dtun_dm_sig_sdp_rec_handle: handle = 0x10006
D/BluetoothService(19147): new handle 0
I/BluetoothZephyr(23605): MESSAGE_STATE_CHANGE: 1
I/BluetoothZephyr(23605): Unable to connect device
D/BluetoothZephyrService(23605): setState() 1 -> 1
D/BluetoothZephyrService(23605): BEGIN mAcceptThreadThread[Thread-9,5,main]
D/BluetoothSocket(23605): accept
D/BluetoothSocket.cpp(23605): acceptNative
I/BluetoothZephyr(23605): MESSAGE_STATE_CHANGE: 1
D/WynexActivity(19215): <><><>ACTION ::android.intent.action.TIME_TICK
D/LocationMasfClient(19147): getNetworkLocation(): Location not found in cache, making network request
D/ProtoRequestListener(19147): requestFailed()
I/power   (19147): *** set_screen_state 0
4

5 回答 5

3

我从 gps-sport 论坛获得了这些信息。虽然不知道该怎么办......

另请参阅http://www.gps-sport.net/forums/thread/1532-0/Keine-Sprachausgabe-auf-HTC-Desire

从软件类别交叉发布此条目。那里的线程将 Zephyr HxM 作为次要问题处理 - 这意味着它可能不容易找到......

24.04.2010 16:47:05 UTC 格林德特上午 24.04.2010 17:03:03 UTC

修复蓝牙连接问题

你好

如果此问题仍未解决,下面的代码描述了如何使连接与 Android 2.1 一起工作(在 HTC Desire 上测试)。只需将“00:07:80:89:EE:EB”替换为 HXM 的 MAC 即可连接。连接成功后,可以使用input = socket.getInputStream()的常规方法。

BluetoothDevice hxm = BluetoothAdapter.getDefaultAdapter().getRemoteDevice("00:07:80:89:EE:EB");
Method m = hxm.getClass().getMethod("createRfcommSocket", new Class[]{int.class});
socket = (BluetoothSocket)m.invoke(hxm, Integer.valueOf(1));
socket.connect();

希望修复程序很快就会出来=)

最好的问候 Espen S. Nygaard

于 2010-04-27T14:39:45.753 回答
2

好的,解决了。

解决方案是更新手机上的固件。我现在有: PDA:I570EXXJE1 电话:i570EXXJD1 CSC:I570EOXEJE1

和蓝牙 spp '开箱即用'。

查看http://samsung-firmwares.com以获取最新固件以及用于刷新手机 (odin) 的程序和详细信息/教程。

于 2010-05-20T07:18:52.773 回答
0

https://android.git.kernel.org/?p=platform/system/wlan/broadcom.git;a=commit;h=e10efcc0c020caa486fa9d8cd05c986fd86f7c44

可以解决这个问题。提交日志是:“为 BCM4325 添加固件”

如果之前内核中没有固件支持这个,那么显然会出问题。

我想我得看看我是否可以从源代码构建android并将其安装在我的手机上:-(

于 2010-05-17T10:05:35.620 回答
0

我发现当其中一个设备关闭蓝牙时会发生这个确切的问题。

于 2010-05-04T17:01:48.943 回答
0

Google Groups (android-developers) 上的这个帖子也很有趣: “Google 是否正在研究蓝牙错误?有预计完成日期吗?'

------ VERSION INFO ------ currenttime=Sat May 1 21:31:48 CEST 2010 kernel.version=Linux version 2.6.29 (root@SE-S611) (gcc version 4.3.1 (for S3C64XX 三星电子 AP 开发团队)#2 Sat Mar 13 02:28:48 KST 2010

kernel.cmdline=# 开始构建属性

由 buildinfo.sh 自动生成

ro.build.id=ECLAIR ro.build.display.id=ECLAIR.XXJCB ro.build.version.incremental=XXJCB ro.build.version.sdk=7 ro.build.version.codename=REL ro.build.version .release=2.1-update1 ro.build.date=2010。03. 13. (토) 02:07:55 KST ro.build.date.utc=1268413675 ​​ro.build.type=user ro.build.user=root ro.build.host=SE-S611 ro.build.tags =ota-rel-keys,release-keys ro.product.model=GT-I5700 ro.product.brand=三星ro.product.name=GT-I5700 ro.product.device=GT-I5700 ro.product.board= GT-I5700 ro.product.cpu.abi=armeabi ro.product.manufacturer=Samsung ro.product.locale.language=en ro.product.locale.region=GB ro.wifi.channels= ro.board.platform=s3c6410

ro.build.product 已过时;使用 ro.product.device

ro.build.product=GT-I5700

不要尝试解析 ro.build.description 或 .fingerprint

ro.build.description=GT-I5700-user 2.1-update1 ECLAIR XXJCB ota-rel-keys,release-keys ro.build.fingerprint=Samsung/GT-I5700/GT-I5700/GT-I5700:2.1-update1/ECLAIR /XXJCB:user/ota-rel-keys,release-keys

三星特定属性

ro.build.PDA=I570EXXJCB ro.build.Phone=I570EXXJCB ro.build.HW=REV 0.1 ro.build.RFCallDate=2009.02.25 ro.build.hidden_​​ver=I570EXXJCB ro.build.changelist=193516 ro.build.FUSDLMode =更改 ro.build.SupportFUS=TRUE ro.build.CGMM=GT-I5700 ro.build.GMM=GT-I5700

最终构建属性

#

spica 的 system.prop

于 2010-05-02T08:58:17.163 回答