New issue
Advanced search Search tips
Note: Color blocks (like or ) mean that a user may not be available. Tooltip shows the reason.

Issue 590961 link

Starred by 2 users

Issue metadata

Status: Assigned
Owner:
Last visit 20 days ago
Cc:
Components:
EstimatedDays: ----
NextAction: ----
OS: Android
Pri: 2
Type: Bug



Sign in to add a comment

Clank permissions request to add storage permission is confusing

Project Member Reported by mdw@chromium.org, Mar 1 2016

Issue description

Version: M50
OS: Android M

What steps will reproduce the problem?
1. Click on a link to download a PDF file in Clank for the first time.
2. Get presented with "Chrome needs storage access to download files" prompt

What is the expected output? What do you see instead?

Tapping on the "Update Permissions" link in this dialog takes you to the generic app settings screen for Clank. It is not immediately obvious what action the user needs to take. Indeed, the first time I saw this, I thought I needed to tap on "Storage" which didn't provide any way of updating permissions. It turns out I needed to tap on "Permissions", and then toggle the "Storage" option. This was very cumbersome.

Other Android apps, when requiring a new permission, provide a dialog box that allows me to immediately grant the permission rather than entering settings and having to manually toggle one of the options there.

Given that I had so much difficulty with this, I could imagine other users being similarly confused and unable to proceed from this point.

Since sidv@ is responsible for downloads (I think), adding him initially to this bug.
 
Screenshot_20160228-175638.png
116 KB View Download
Screenshot_20160228-175644.png
104 KB View Download
Cc: asanka@chromium.org qin...@chromium.org

Comment 2 by sidv@chromium.org, Mar 29 2016

Cc: klo...@chromium.org
Is this a problem that is specific to the storage permission or other on-demand permissions as well ? In any case, I agree that it'd be nice to let the user directly set the permission from the prompt. 

Grace, is this something we could look at for M52?

Comment 3 by klo...@chromium.org, Mar 29 2016

I believe you should only get the info bar if you denied the permission, and say don't ask again, previously. Otherwise we should load the system permission prompt.

Can someone repro with a clean version?

Comment 4 by mdw@chromium.org, Mar 29 2016

To my knowledge I never denied the permission, although this may have occurred after my device was updated from L to M.

Comment 5 by klo...@chromium.org, Mar 29 2016

In theory, upgrade from L to M should pre-grant the permissions we ask in the AndroidManifest. So this is still not as expected.

Comment 6 by sidv@chromium.org, Mar 31 2016

Grace, would un-installing and re-installing Chrome be the way to reproduce this ?
If you uninstall and reinstall on M device, the permissions won't be pre-grant. Then you should see the permission prompt instead of infobar prompt.

Comment 8 by sidv@chromium.org, Apr 5 2016

Ok, I tried that and found the following 
- I get a prompt that says "Chrome needs your permission..." . 
- I then get a prompt that says "Allow Chrome to access photos, media and files on your device ?" to which I said Deny
- The download did not go through 
- Tried again. This time it showed a "never ask again" which I said yes to 
- Tried downloading again. This tine I got a different prompt (at the bottom) which said "Chrome needs storage access to download files" with a button "Update Permissions" 
- Clicking on this takes you to the App Info page. 

Overall, I think this is consistent with what Grace was describing. We show the one click prompt to update permissions till the user says "don't ask again". Then, we show the app info page. 

I don't know the rationale behind this flow, but it seems reasonable to me. Matt, do you have a different opinion ?

Comment 9 by mdw@chromium.org, Apr 5 2016

The flow I observed has several problems, as described in the original bug:

1) You actually have to tap on "Permissions" and then "Storage" from the app info page. This was not at all obvious to me.

2) I never saw a one-click prompt to update permissions. Are you saying that it *is* possible to grant the permission without having to go into the App Info page and do it by hand? And that would be the typical flow? (Not what I experienced.)

The concern here, of course, is that if users don't understand/follow this flow, then downloads will fail. UC Browser no doubt does not have this problem and I would argue that Chrome should not have it either.

Comment 10 by sidv@chromium.org, Apr 5 2016

1) I agree. But I could only get the version of the prompt after I said "never ask again" 
2) The one click prompt appears to be the default. I tested this with a new install as well as an uninstall and re-install. Can you repro your use case ?

Comment 11 by mdw@chromium.org, Apr 5 2016

I think the only way to repro would be to reflash my device with L and then upgrade it again to M ... kind of a pain :-) Do we have metrics on how often users are seeing these prompts and/or failing to grant the required permission?

Re #9 1), Android doesn't have API to go into the individual permission. From platform perspective, user said "Dont ask me again", if an app still want to ask, they can only get the top permission page. Chrome does try to help by saying "Chrome needs storage access". If we think the string is not clear enough, we can get UX team to figure out a better one.

From L to M, permission should be pre-granted.

Comment 13 by mdw@chromium.org, Apr 5 2016

Re #12 - I believe that the permission *should* be pre-granted; what I'm seeing is that it was not. No idea how to diagnose this without going from L to M by hand. Maybe it was a fluke, hence my question about whether we have metrics. A spike in users being unable to download things after updating to M would be cause for concern.

Comment 14 by mdw@chromium.org, Apr 23 2016

This happened again to me today. I had previously "reset app defaults" on my phone to diagnose another issue, which I believe resets the permissions that I've granted to apps, which explains why I got asked again.

I did a search from GSA which took me to a page with a link to a PDF. When tapping on the PDF, I got this unfriendly message that I needed to update Chrome's permissions to allow it to access storage. When tapping on the message it was not clear what to do - I was just looking at the app info screen. I had to tap on "Permissions" and then select "Storage" and then go back a few screens to retry the download.

I feel like this is a pretty broken flow. Granting the storage permission should be a single-tap action, not requiring me to drill down through the Android menus. Other apps have no problem making requests for permissions that I can grant with one tap; why is the storage permission any different?

Android bugreport attached.
bugreport-2016-04-23-10-10-04.zip
2.3 MB Download
Cc: tedc...@chromium.org sidv@chromium.org
Owner: qin...@chromium.org
Thanks for the repro steps. "Reset app preferences" should put permission in the initial state. We should be able to trigger the system dialog.

Min and Ted, I remember there was some funky about whether we can know the state whether we can call the system permission api. Do we have the knowledge in this case?
I vaguely remember the "Chrome needs storage permissions to download files" dialog is added because the android storage permission dialog doesn't provide good information on why the permission is needed.

For example, when downloading a file, android storage permission dialog shows "allow chrome to access photos, media and files on your device".   User will get confused by asking "why chrome needs to access photos and media when i try to download a file". That's why we added the first storage permission dialog to help user understand why we need the permission
From the Android APIs, we can not distinguish from
1.) We have never asked for a particular permission yet
2.) The user has said deny forever

Because of this, we keep a shared pref to track #1.  We were operating under the assumption that there would be no flow to reset permissions w/o the app data, but that appears to not be the case.

Unless Android gives us a signal about this, I don't know an easy path forward.
It seems we handle better with camera. e.g. using webrtc as a test.

Comment 19 by mdw@chromium.org, Apr 25 2016

One path forward would be an interstitial message saying, "Chrome needs access to storage to download files. On the next prompt, please select "OK"."

Alternately, simply show the Android dialog and don't worry about the fact that the wording is funny.

Comment 20 by mdw@chromium.org, Aug 15 2016

This is still happening for me on M54 after resetting app preferences in Android settings. This is a pretty bad user experience - are we planning to do anything about it?

Screenshots attached.
Screenshot_20160815-130702.png
635 KB View Download
Screenshot_20160815-130707.png
149 KB View Download
Screenshot_20160815-130713.png
104 KB View Download

Comment 21 by mdw@chromium.org, Mar 20 2017

Owner: dah...@chromium.org
Ping, I am still seeing this in M57. Who is owning this? Reassigning to dahlke@ as PM.

Owner: aboss@chromium.org
Owner: nancygao@chromium.org

Sign in to add a comment