Status Update
Comments
mi...@google.com <mi...@google.com> #2
Please provide sample project or apk to reproduce the issue. Also mention the steps to be followed for reproducing the issue with the given sample project or apk.
Android bug report (to be captured after reproducing the issue on latest public build)
For steps to capture a bug report, please refer:
Alternate method
Navigate to “Developer options”, ensure “USB debugging” is enabled, then enable “Bug report shortcut”. Capture bug report by holding the power button and selecting the “Take bug report” option.
Note: Please upload the bug report to google drive and share the folder to android-bugreport@google.com, then share the link here.
da...@gmail.com <da...@gmail.com> #3
The easiest way to reproduce the issue is by using an app like Nordic's
Prerequisites:
Any BLE device you can create a GATT connection to
Steps to reproduce:
- Open nRF Connect for Mobile
- Discover the BLE device
- Create a connection to the BLE device
- Pull from the left side of the screen in nRF to reveal the log window (or look at logcat on a connected computer)
- Terminate the BLE connection by powering off or taking the BLE device out of range
Expected result:
If the BLE device is taken out of range, the GATT status value in
If the BLE device terminates the connection, the GATT status value in
The GATT status should only be '0' when the app closes the connection via a call to
Actual result:
In Android 12, regardless how the BLE connection is terminated the GATT status is always '0'.
See attached screen shot ('Comparison.png') for a comparison between an older Android version and Android 12.
Pixel 12:
GATT_CONN_TIMEOUT, disconnect reason 8:
2021-11-29 11:48:13.635 13689-13722/? D/BluetoothGatt: onClientConnectionState() - status=0 clientIf=9 device=xx:xx:xx:xx:xx:xx
GATT_CONN_TERMINATE_PEER_USER, disconnect reason 19:
2021-11-29 11:53:02.644 13689-21741/? D/BluetoothGatt: onClientConnectionState() - status=0 clientIf=9 device=xx:xx:xx:xx:xx:xx
Bugreport
mi...@google.com <mi...@google.com> #4
The headline 'Pixel 12' should have been: 'Pixel 4, Android 12'. 😀
da...@gmail.com <da...@gmail.com> #5
We have shared this with our product and engineering team and will update this issue with more information as it becomes available.
mi...@google.com <mi...@google.com> #6
If you look into the HCI snoop log, you can see that the disconnect reasons (0x08 and 0x13), are correctly shown there.
Though I noticed that in the HCI log, there is a 'Status: Success (0x00)' field. Is this the one which is now passed on to the onClientConnectionState() / onConnectionStateChanged() methods?
If that is the case, then how do we get the 'disconnect reason' through the API in Android 12?
Android 12:
GATT_CONN_TIMEOUT, disconnect reason 8 ((0x08):
HCI log:
44563 10:48:13.617287 0.000839 controller host HCI_EVT 7 Rcvd Disconnect Complete
Frame 44563: 7 bytes on wire (56 bits), 7 bytes captured (56 bits)
Bluetooth
Bluetooth HCI H4
Bluetooth HCI Event - Disconnect Complete
Event Code: Disconnect Complete (0x05)
Parameter Total Length: 4
Status: Success (0x00)
Connection Handle: 0x0002
Reason: Connection Timeout (0x08)
Log cat:
2021-11-29 11:48:13.635 13689-13722/? D/BluetoothGatt: onClientConnectionState() - status=0 clientIf=9 device=xx:xx:xx:xx:xx:xx
GATT_CONN_TERMINATE_PEER_USER, disconnect reason 19 (0x13):
HCI log:
45054 10:53:02.634023 16.743903 controller host HCI_EVT 7 Rcvd Disconnect Complete
Frame 45054: 7 bytes on wire (56 bits), 7 bytes captured (56 bits)
Bluetooth
Bluetooth HCI H4
Bluetooth HCI Event - Disconnect Complete
Event Code: Disconnect Complete (0x05)
Parameter Total Length: 4
Status: Success (0x00)
Connection Handle: 0x0003
Reason: Remote User Terminated Connection (0x13)
Log cat:
2021-11-29 11:53:02.644 13689-21741/? D/BluetoothGatt: onClientConnectionState() - status=0 clientIf=9 device=xx:xx:xx:xx:xx:xx
Android 11:
GATT_CONN_TIMEOUT, disconnect reason 8 ((0x08):
HCI log:
19997 11:20:16.335340 0.001857 controller host HCI_EVT 7 Rcvd Disconnect Complete
Frame 19997: 7 bytes on wire (56 bits), 7 bytes captured (56 bits)
Bluetooth
Bluetooth HCI H4
Bluetooth HCI Event - Disconnect Complete
Event Code: Disconnect Complete (0x05)
Parameter Total Length: 4
Status: Success (0x00)
Connection Handle: 0x0040
Reason: Connection Timeout (0x08)
Log cat:
12-02 11:20:16.348 10268 25440 26308 D BluetoothGatt: onClientConnectionState() - status=8 clientIf=11 device=52:31:2C:E1:EF:82
12-02 11:20:16.349--BluetoothRemoteDevices -- ACTION_ACL_DISCONNECTED, device is 52312C, reason is 8, linktype is 2
GATT_CONN_TERMINATE_PEER_USER, disconnect reason 19 (0x13):
HCI log:
20386 11:21:13.816370 3.541896 controller host HCI_EVT 7 Rcvd Disconnect Complete
Frame 20386: 7 bytes on wire (56 bits), 7 bytes captured (56 bits)
Bluetooth
Bluetooth HCI H4
Bluetooth HCI Event - Disconnect Complete
Event Code: Disconnect Complete (0x05)
Parameter Total Length: 4
Status: Success (0x00)
Connection Handle: 0x0040
Reason: Remote User Terminated Connection (0x13)
Log cat:
12-02 11:21:13.826 10268 25440 26126 D BluetoothGatt: onClientConnectionState() - status=19 clientIf=11 device=52:31:2C:E1:EF:82
12-02 11:21:13.828--BluetoothRemoteDevices -- ACTION_ACL_DISCONNECTED, device is 52312C, reason is 19, linktype is 2
da...@gmail.com <da...@gmail.com> #7
Same situation with Android 12L Beta on Pixel 4 :( - still always returns 'status = 0'.
Pixel 4, SB1.211112.006
mi...@google.com <mi...@google.com> #8
...and also still a problem on Pixel 6 with the January patch: SQ1D.220105.007
da...@gmail.com <da...@gmail.com> #9
...and on Pixel 4 with Android 13 developer preview: TPP1.220114.016
mi...@google.com <mi...@google.com> #10
da...@gmail.com <da...@gmail.com> #11
da...@gmail.com <da...@gmail.com> #12
mi...@google.com <mi...@google.com> #13
Is there any update on this? When this issue is going to be fixed?
da...@gmail.com <da...@gmail.com> #14
The situation is unchanged for 12.1.0 (SP2A.220305.012, Mar 2022) :(
Description
What is the purpose of this new feature? This feature is for when exporting text that contains some markdown syntax like **boy** should be in bold to be automatically set, instead of manually having to open the doc and changing the settings preference.
What existing APIs would this affect? This would only affect the `create` API for creating a new google doc
What existing data does this use? It doesn't use any existing data
Please provide any additional information below.