New issue
Advanced search Search tips

Issue 808751 link

Starred by 3 users

Issue metadata

Status: WontFix
Owner: ----
Closed: Apr 2018
Cc:
Components:
EstimatedDays: ----
NextAction: ----
OS: Android
Pri: 3
Type: ----
Team-Accessibility



Sign in to add a comment

Jan 25 2018 update (64.0.3282.123) introduces issues with accessibility services

Reported by kyle.spe...@gmail.com, Feb 3 2018

Issue description

Device name: 

Pixel 2 XL (taimen)
Pixel XL (marlin)
OnePlus5 (OnePlus5)
OnePlus3 (OnePlus3)
Pixel 2 (walleye)	
OnePlus3T (OnePlus3T)
Nexus 6P (angler)
OnePlus5T (OnePlus5T)
Pixel (sailfish)
and more....

See full list at https://imgur.com/WeYIeFY


Application version: 64.0.3282.123
Operating system: 7.0, 7.1, 8.0, and 8.1

See full list at https://imgur.com/WeYIeFY


URLs (if applicable): n/a


Steps to reproduce:
(1) Install bitwarden password management application on an affected device. https://play.google.com/store/apps/details?id=com.x8bit.bitwarden
(2) Enable bitwarden's autofilling accessibility service. https://help.bitwarden.com/article/auto-fill-android/
(3) Start using Chrome with the accessibility service running.


Expected result:
No accessibility service crashes


Actual result: 
I'll preface this with the statement that this bug has been difficult for us to reproduce. We've had to rely on a few of our users who can reproduce the problem consistently on their end since we haven't been able to reproduce it ourselves. Much of the testing here is somewhat speculative, however, there are too many coincidences involved up to this point that have left us with the only logical conclusion being that something has changed in Chrome to introduce this problem.

We've been running an accessibility service in our app for over a year now. It works quite well in Chrome for autofilling passwords into websites. The code for this accessibility service has not really changed in many months. The last app update we pushed out for our app was on January 2 2018 (which didn't include changes to the accessibility service).

Starting on January 25, an abnormal influx of crash reports, ANRs, bad reviews, and other user reports via email and other mediums have started to flood in about issues with our app crashing and being generally unstable. This has puzzled us for days as we've been unable to come up with an explanation since our last update was put out several weeks prior and had been stable during the weeks following. Looking at the crash logs in the Google Play Console seemed to confirm the reports we were hearing from users. See https://imgur.com/KfSf5We

The crash logs (see attached) all seem to point to an issue in our accessibility service that is used for autofilling. The logs point to native code (libc.so, libart.so) coming out of AutofillService.n_onAccessibilityEvent. The stacktraces are fairly cryptic to us and hasn't been very helpful in determining where the issue happening in our app's code. We use Xamarin.Android for developing this app. Our app is open source on GitHub, so relevant information regarding our accessibility service's implementation can be found here: https://github.com/bitwarden/mobile/blob/master/src/Android/Resources/xml/accessibilityservice.xml , https://github.com/bitwarden/mobile/blob/master/src/Android/AutofillService.cs

Today we discovered that Chrome pushed out an update for 64.0.3282.123 on January 25, so we had some of our users that are having these issues try reverting that Chrome update. On a Samsung S6 running Android 7.0, after reverting to the system version of Chrome (v58) the user reported that the problem has now gone away and our app is back to running stable with accessibility services running. The user then updated Chrome back to the latest (v64) and problems with the accessibility service crashing in our app have immediately returned.
 
ANR_log.txt
16.1 KB View Download
Crash_log.txt
1.9 KB View Download
Crash_log2.txt
2.0 KB View Download
play_store_crash_reports.png
30.1 KB View Download
crash_stats.png
93.5 KB View Download
Some more testing results from our users having this issue:

Reset to v58 default on phone (Samsung S6 Android 7.0)
15 successful attempts at a website login. No issues.

63.0.3239.111
15 successful logins.  No issues.

64.0.3282.126
15 successfully logins.  No issues.

64.0.3292.123
Our app freezes/crashes after first autofill attempt with the accessibility service. Replicated each time after 3 phone restarts.

64.0.3292.137
Our app froze/crashed after 12 login attempts. Phone restarted. Froze after 1 attempt. Restarted. Froze after 5. Restarted. Froze after 1. There also seems to be a noticeable, slight lag in our app's performance here. The working versions would autofill almost instantly. V137 would take almost a second to autofill the fields. Perhaps on the verge of crashing?

Beta
From Play Store, user also installed "Chrome Beta", which is in v65. It installs as a separate app rather than overwriting the original Chrome. Our app freezes/crashes with it too.
We've now been able to confirm the problem with multiple other users on various types of devices, so I am fairly confident in saying that this seems to be a regression in Chrome. All problems start with 64.0.3292.123.

Also, possibly related: https://bugs.chromium.org/p/chromium/issues/detail?id=806108
Labels: Needs-triage-Mobile
Cc: pnangunoori@chromium.org
Components: Blink>Accessibility UI>Accessibility
Labels: Triaged-Mobile Needs-Feedback
kyle.spearrin@ -- Thanks for reporting this issue. Even after enabling the 'bitwarden' application, Passwords are not auto-populated in the Chrome browser. However, login credentials and passwords are auto-populated in the same app (facebook) by following the steps below on Pixel XL, Android 8.1 on Chrome #64.0.3282.137, 66.0.3336.4:

1. Launch the bitwarden application.
2. Add details of a login. Eg.: www.facebook.com/ www.m.facebook.com
3. Open Chrome browser.
4. Navigate to www.facebook.com/ www.m.facebook.com
5. Observed that "Auto fill with bitwarden" popup is not displayed.
6. However, if the user opens facebook application, "Auto fill with bitwarden" popup is displayed.

Please let us know if we have missed anything or kindly share a screencast of the issue. This would help us in reproducing and triaging the issue further.

Also, please share the Crash ID generated in chrome://crashes of the affected device.

Thanks in advance
pnangunoori@chromium.org - We offer two autofill services:

1) Oreo Autofill Framework Service (available on 8.0+ devices)
2) Autofill Accessibility Service (available on all devices).

This problem is with #2. It sounds like you are using #1 to test, which is not a problem.

Please enable the Autofill Accessibility Service for bitwarden under Android Settings -> Accessibility.

Additionally, I will consult our users that can reproduce the problem, but I don't think there would be crash ids generated in chrome://crashes since the crash occurs in the Accessibility Service's host application (bitwarden) rather than Chrome itself.
Project Member

Comment 6 by sheriffbot@chromium.org, Feb 5 2018

Labels: -Needs-Feedback
Thank you for providing more feedback. Adding requester "pnangunoori@chromium.org" to the cc list and removing "Needs-Feedback" label.

For more details visit https://www.chromium.org/issue-tracking/autotriage - Your friendly Sheriffbot

Comment 7 by ri...@outlook.com, Feb 5 2018

I'm able to reproduce it if I try to login to github.com from Chrome using bitwarden, but nothing appears in chrome://crashes.

I even enabled error reporting on Chrome but nothing shows up there.
Tested on Android Devices and able to reproduce rarely (5 of 50 times) only on Samsung SM-J710F Android 7.0.0 Build/NRD90M and never reproduced on Android 7.0.0 SM-G935F build/NRD90M using Chrome #64.0.3282.137.

Bitwarden Accounts used: axsysmob1@gmail.com, testlaab210@gmail.com

Steps:

1. Launch Chrome application.
2. Install Bitwarden application and enable it in Device Settings >> Accessibility.
3. Navigate to any site where user can login. Eg.: twitter, facebook, amazon etc, github
4. Access between Bitwarden application and Chrome application.
5. Observed that Bitwarden application hangs. (5 of 50 times)

Note: 
1. Unable to capture screencast and logs of the actual issue as it rarely hanged. After 25th attempt it never hanged on Samsung SM-J710F Android 7.0.0 Build/NRD90M as well.
2. Couldn't add 'FoundIn' labels as we are unable to confirm in what all versions it can be reproduced.
3. Attached the screenshots of sites tested.

Requesting dev team to look into this issue.

https://drive.google.com/drive/folders/14w6OBBKgmY88Sm1GWMN2h1NKNoCor3l8?usp=sharing
pnangunoori@chromium.org - Should status be changed to confirmed then?
Reply to #9, since the issue is not consistently reproducible the bug status will remain as Unconfirmed. 

Accessibility devs are in the cc list, they will provide an update. 
We have confirmed that the issue is related to https://bugs.chromium.org/p/chromium/issues/detail?id=805014 , which was causing our app to do infinite recursion when traversing the accessibility node tree.

We have added checks to prevent transversing a branch of the accessibility tree if the node's child is the same as the parent.
@Accessibility team - Gentle ping to look into this issue.

kyle.spearrin@ -- Could you please let us know the behavior on Chrome #65.0.3325.109.

Thanks!
Status: WontFix (was: Unconfirmed)
As there is no further update from reporter, closing this issue.

Thanks!

Sign in to add a comment