Android蓝牙耳机接听挂断电话流程

一、alps/packages/apps/Bluetooth/src/com/android/bluetooth/hfp/HeadsetStateMachine.java

Android蓝牙耳机接听挂断电话流程_第1张图片
image.png

processAnswerCall

这个方法就是接听电话 我们来往上走 还是
alps/packages/apps/Bluetooth/src/com/android/bluetooth/hfp/HeadsetStateMachine.java


Android蓝牙耳机接听挂断电话流程_第2张图片
image.png

原来是jni回调java。


Android蓝牙耳机接听挂断电话流程_第3张图片
image.png

alps/packages/apps/Bluetooth/jni/com_android_bluetooth_hfp.cpp

Android蓝牙耳机接听挂断电话流程_第4张图片
image.png

alps/packages/apps/Bluetooth/jni/com_android_bluetooth_hfp.cpp

Android蓝牙耳机接听挂断电话流程_第5张图片
image.png

alps/packages/apps/Bluetooth/jni/com_android_bluetooth_hfp.cpp

Android蓝牙耳机接听挂断电话流程_第6张图片
image.png

alps/packages/apps/Bluetooth/jni/com_android_bluetooth_hfp.cpp

Android蓝牙耳机接听挂断电话流程_第7张图片
image.png

alps/packages/apps/Bluetooth/jni/com_android_bluetooth_hfp.cpp

Android蓝牙耳机接听挂断电话流程_第8张图片
image.png
Android蓝牙耳机接听挂断电话流程_第9张图片
image.png

alps/system/bt/btif/src/btif_hf.c

Android蓝牙耳机接听挂断电话流程_第10张图片
image.png

alps/system/bt/btif/src/btif_hf.c

Android蓝牙耳机接听挂断电话流程_第11张图片
image.png

alps/system/bt/btif/src/btif_hf.c

Android蓝牙耳机接听挂断电话流程_第12张图片
image.png
Android蓝牙耳机接听挂断电话流程_第13张图片
image.png

alps/hardware/libhardware/include/hardware/bt_hf.h

Android蓝牙耳机接听挂断电话流程_第14张图片
image.png
Android蓝牙耳机接听挂断电话流程_第15张图片
image.png
Android蓝牙耳机接听挂断电话流程_第16张图片
image.png

好了 跟踪完了

        HAL_CBACK(bt_hf_callbacks, answer_call_cmd_cb,
                          &btif_hf_cb[idx].connected_bda);
Android蓝牙耳机接听挂断电话流程_第17张图片
image.png

logcat | grep "AT cmd"

第一个是接听 第二个是挂断

Android蓝牙耳机接听挂断电话流程_第18张图片
image.png

再往下跟


Android蓝牙耳机接听挂断电话流程_第19张图片
image.png
Android蓝牙耳机接听挂断电话流程_第20张图片
image.png

p_cmd_cback

alps/system/bt/bta/ag/bta_ag_at.c

bta_ag_process_at


Android蓝牙耳机接听挂断电话流程_第21张图片
image.png
Android蓝牙耳机接听挂断电话流程_第22张图片
image.png

alps/system/bt/bta/ag/bta_ag_at.c

Android蓝牙耳机接听挂断电话流程_第23张图片
image.png

system/bt/bta/ag/bta_ag_act.c

Android蓝牙耳机接听挂断电话流程_第24张图片
image.png

你可能感兴趣的:(Android蓝牙耳机接听挂断电话流程)