Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Confusing non-information about data usage #1421

Open
3 tasks done
GfEW opened this issue Aug 1, 2024 · 4 comments
Open
3 tasks done

Confusing non-information about data usage #1421

GfEW opened this issue Aug 1, 2024 · 4 comments
Labels
Bug Something isn't working

Comments

@GfEW
Copy link

GfEW commented Aug 1, 2024

Please check before submitting an issue

  • I know what my device, OS and App Manager versions are
  • I know how to take logs
  • I know how to reproduce the issue which may not be specific to my device

Describe the bug

As of 3.1.7 (430), some apps' details lack the Data usage section.

I'm aware of that being intentional only because it's been advertised in the one-time "what's new" dialog. I suppose we agree that making sense of a GUI shouldn't depend on reading its changelog.

Am I right to assume you consider displaying Data usage "pointless" if the app currently has no internet permission?

In any case, the end result is rather confusing. If the section Data usage is missing entirely, that doesn't tell anything but rather leaves it up for the user to guess (or having to find out otherwise) "what's wrong". E. g., there is no indication whether

  • AppManager silently fails to read data usage values and therefore omits the section or
  • there's another problem in AppManager that prevents it from displaying that section or
  • there has been no traffic by this particular app or
  • you name it,

let alone "it's actually '0 B' traffic up/down, but deliberately not shown 'because' we consider this information pointless for you if the app currently doesn't have internet permission (assuming you are easily aware which apps have which exact permissions), and this app in its current version indeed does not have internet permission (so you know it's '0 B' traffic anyway, right?)".

On the contrary, explicit "0 B" values remove that entire ambiguity and give clear, simple information with no questions left, which IMHO makes them more than worth the little screen estate they take.

To Reproduce

  1. Open the main list of apps in AppManager, with no active filter.
  2. Tap at any App, wait for the details view to be shown.
  3. Scroll down to see that App's data usage.
  4. You'll be scrolling up and down without finding the values.
    If the problem doesn't occur immediately, repeat 1.-3. with different apps (e. g. com.android.egg if available).

Expected behavior

You should be provided with the plain up/down data usage of that App, without having to infer those values from non-obvious circumstances you'd have to be aware of.

(Alternatively to explicit "0 B" values for affected apps, the Data usage section could inform the user along the lines of "This App cannot access the internet.". However, doing so would still leave questions open about possible data usage in the past.)

Screenshots

No response

Logs

No response

Device info

  • Device: diverse
  • OS Version: Android 9 to Android 11
  • App Manager Version: 3.1.7 (430)
  • Mode: Root/ADB/NonRoot all affected

Additional context

No response

@GfEW GfEW added the Bug Something isn't working label Aug 1, 2024
@MuntashirAkon
Copy link
Owner

I'm aware of that being intentional only because it's been advertised in the one-time "what's new" dialog. I suppose we agree that making sense of a GUI shouldn't depend on reading its changelog.

It makes sense for App Manager. App Manager users are also expected to read the docs.

Am I right to assume you consider displaying Data usage "pointless" if the app currently has no internet permission?

Yes. Because this does not create any ambiguities in the feature as it's already been hidden for other cases from the beginning, such as when the feature is disabled or permission unavailable or simply when its not possible to fetch this data like you said in your post.

I think your confusion stems from your inferring unintended information from the feature. One easy way to fix this is by introducing a new tag that asserts whether an app has the internet permission.

@MuntashirAkon
Copy link
Owner

Also, even if the Internet permission is unavailable at present, the permission may have been utilised in the past in which case the data usage fields may be non-empty.

@GfEW
Copy link
Author

GfEW commented Aug 11, 2024

Thanks for your comments!

App Manager users are also expected to read the docs.

Granted. My point here is more about improving the self-evidence of the GUI and not meant to remove any need to read the docs.

On the idea that hiding Data usage

does not create any ambiguities in the feature as it's already been hidden for other cases from the beginning, such as when the feature is disabled or permission unavailable or simply when its not possible to fetch this data like you said in your post.

I beg to differ. If Data usage is already been hidden for other reasons, that only corroborates the ambiguity.

I think your confusion stems from your inferring unintended information from the feature.

I agree. There's more background to that:

I think that, if AppManager never ever displayed Data usage in app details, nobody would infer information from the observation there is no Data usage section displayed for a particular app. Users interested in the data usage of apps simply wouldn't look there, and wouldn't be confused about any meaning, reasons or implications of the absence of that section.

Displaying it for some apps, though, changes the context. Instead of "meaning nothing", the absence of traffic information from a particular app's details then naturally raises the question "What does this omission mean?". More specifically, it doesn't make the question about that app's data usage go away, and the answer is far from obvious, which is where the confusion arises.

One easy way to fix this is by introducing a new tag that asserts whether an app has the internet permission.

Such a tag could help to infer the correct meaning of the absence of a Data usage section where the lack of internet permission is the reason. However, it would be easier to understand, and more informative at the same time, if Data usage always showed either of e. g.

  1. N Bytes (*)
  2. zero Bytes (*)
  3. unknown
    and possibly also
  4. internet permission denied
  5. networking disabled
  6. etc.

Moreover, in the (*) marked cases, the provided information would be even more useful if the user could also see the start date of the current traffic counting period, like in "16.3 kB since 2024-04-04 12:34:56".

even if the Internet permission is unavailable at present, the permission may have been utilised in the past in which case the data usage fields may be non-empty.

Right. That's actually why I wrote

currently doesn't have internet permission

in the "let alone ..." variant of possible interpretations. The ramifications of positive data usage before an app's internet permission is revoked pose an additional point of interpretational ambiguity that I intended to address after examining AppManager's current behaviour. Unfortunately, I still haven't found the time to do the test.

Anyway, these two dimensions are independent:

  • (a) an app's data usage since last traffic counter reset, and
  • (b) that app's current state of networking permission/access,

IOW, each possible value of (a) - i. e. "N Bytes", "0 Bytes" or "unknown Bytes" since last counter reset - can occur with each possible value of (b) - i. e. networking currently "allowed", "denied" or "disabled" - right?

If so, why not display both?

I think that regarding Data usage, (a) is essential whilst (b) is complementary information. Therefore, if there's only space for one, (a) should prevail. Whenever only (b) is shown (or nothing at all), (a) remains unclear.

@MuntashirAkon
Copy link
Owner

Displaying it for some apps, though, changes the context. Instead of "meaning nothing", the absence of traffic information from a particular app's details then naturally raises the question "What does this omission mean?". More specifically, it doesn't make the question about that app's data usage go away, and the answer is far from obvious, which is where the confusion arises.

That's the intended behaviour. A user has to question why certain features aren't available for an application. While it tries to answer many questions within the feature itself, not all questions are simple. This is why we have the docs, changelogs and community Q&As. In addition, developing in-feature documentation is very costly.

Moreover, in the (*) marked cases, the provided information would be even more useful if the user could also see the start date of the current traffic counting period, like in "16.3 kB since 2024-04-04 12:34:56".

Time and date aren't always reported.

Anyway, these two dimensions are independent:

  • (a) an app's data usage since last traffic counter reset, and
  • (b) that app's current state of networking permission/access,

Networking is always allowed for every app with the Internet permission, except for Graphene OS which has a specific way to handle it. Lineage OS also developed an option, but it does not prevent other ways to connect to the Internet (e.g., through binder communication). The only way networking can be disabled is when the permission itself is removed from the app (e.g., via an update). App Manager does not remember update history, so it's not possible for App Manager to keep track of the state of the Internet permission.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Bug Something isn't working
Projects
None yet
Development

No branches or pull requests

2 participants