欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  移动技术

测试机通知栏打开蓝牙时间比竞品机慢

程序员文章站 2022-03-27 11:31:56
测试机Q版本竞品机P版本测试步骤:1.下拉通知栏2.打开蓝牙3.蓝牙图标开启过程结束时终止计时测试结果:测试机比竞品机慢0.1~0.2s分析:对比两台设备的BT enable过程,整理各个阶段用时如下:可以看到大部分流程用时都很接近,只有BT stack config过程测试机较长,而这一过程中,最主要的耗时点为:测试机:08-18 14:56:55.143204 14888 14936 D bt_btif : btif_transfer_context event 0, len...

测试机Q版本
竞品机P版本

测试步骤:
1.下拉通知栏
2.打开蓝牙
3.蓝牙图标开启过程结束时终止计时

测试结果:
测试机比竞品机慢0.1~0.2s

分析:
对比两台设备的BT enable过程,整理各个阶段用时如下:
测试机通知栏打开蓝牙时间比竞品机慢

可以看到大部分流程用时都很接近,只有BT stack config过程测试机较长,而这一过程中,最主要的耗时点为:

测试机:
08-18 14:56:55.143204 14888 14936 D bt_btif : btif_transfer_context event 0, len 280
08-18 14:56:55.205096 14888 14915 D bt_btif : btif task fetched event a001

对比机:
08-19 14:35:52.612614 9256 9307 D bt_btif : btif_transfer_context event 27, len 280
08-19 14:35:52.612715 9256 9286 D bt_btif : btif task fetched event a001

这里涉及的操作是线程切换及线程间的消息传递,受system影响较大。由于测试机和对比机的Android版本不同,系统也有差异,并且这里并没有线程卡住的问题,耗时几十ms也在可接受范围,所以暂时也没有很好的优化方法。

整体上来说,BT enable耗时的差异在100ms~200ms左右,这个差异较难被人眼察觉,对于用户体验来说也没有很大影响。

status bar点击BT:
08-18 14:56:54.663036 882 2646 D BluetoothManagerService: enable(com.android.systemui): mBluetooth =null mBinding = false mState = OFF
08-18 14:56:54.663266 882 2646 D BluetoothManagerService: enable returning

BluetoothAdapter create:
08-18 14:56:54.895712 14888 14888 D BluetoothAdapterApp: onCreate

bt driver init:
08-18 14:56:55.049533 677 687 W [BT] : mtk_bt_init #45

hci module startup finished:
08-18 14:56:55.103722 14888 14931 I bt_hci : event_finish_startup

BT stack config finished:
08-18 14:56:55.248184 14888 14915 I bt_btif : event_signal_stack_up: HAL bt_hal_cbacks->adapter_state_changed_cb

各个profile config:(主要在如下两个状态切换过程中完成,所以统计的是状态切换的时间)
08-18 14:56:55.256148 882 958 D BluetoothManagerService: MESSAGE_BLUETOOTH_STATE_CHANGE: BLE_ON > TURNING_ON
08-18 14:56:55.570427 882 958 D BluetoothManagerService: MESSAGE_BLUETOOTH_STATE_CHANGE: TURNING_ON > ON

Total:(统计的如下两句log的时间差,即按下BT on->BT状态切换到ON的时间)
08-18 14:56:54.663036 882 2646 D BluetoothManagerService: enable(com.android.systemui): mBluetooth =null mBinding = false mState = OFF
08-18 14:56:55.570427 882 958 D BluetoothManagerService: MESSAGE_BLUETOOTH_STATE_CHANGE: TURNING_ON > ON

本文地址:https://blog.csdn.net/weixin_45809934/article/details/108116552

相关标签: bt