-
Notifications
You must be signed in to change notification settings - Fork 1.4k
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
Wi-Fi filter not present in Android 10 #3387
Comments
I can reproduce it on Android 10 emulator. The issue is a bit complicated. It seems that the way to get a list of configured (i.e., saved) wifi networks are deprecated - the use of Line 84 in fd62565
According to documentation, it should still work as AntennaPod is targeted to Android 9 (targetSdkVersion is 28). But based on @gaul 's report and my trial on Android 10 emulator, it seems that Android 10 instead gives empty result, as if AntennaPod is targeted to Android 10. The problem was asked on statckoverflow, with no answer so far: I don't know if there is a user workaround (tweaking some new Android 10 settings on the device so that AntennaPod can get the list of SSIDs). If not, there will need to have some code / UI change, as the list is not available on Android 10. |
Poking around google bug tracker, it seems that to Testing on emulator, I found adding A issue is filed to Google: https://issuetracker.google.com/issues/140696830 |
That's bad. I guess there are a lot of users who would not like us to add location permissions to the app... If we add the permission, we should add it using this manifest tag: https://developer.android.com/guide/topics/manifest/uses-permission-sdk-23-element. That way, it bothers less users if we do not request the permission at runtime. I suggest to create a new preferences fragment for the wifi selection and request the runtime permission there (and show a dialog explaining why we need that permission). |
@gaul it'd be great if you could help to test to see if the fix (of adding It is a Once you install it, you also need to manually grant location permission in the app's permission screen: |
@ByteHamster Regarding an actual fix, I'd suggest one of the following:
Something alone the line of (2) is needed eventually (when AntennaPod targets Android 10), and there will be various complication, e.g., at presentAntennaPod stores Given that, if we start with (1) as a short-term fix, I'd suggest we don't change the UI too much, as it is likely to be changed again when a long-term fix comes in. |
In my opinion, 1 is the better option and also a long-term fix. Users don't want to type the name of wifi networks manually. If the prompt is only displayed if the filter is enabled and we show an explanation, that should hopefully not bother users. |
I personally agree with this; I'd rather accept location (esp. for an open-source app) than having to figure out/remember SSID's. |
This worked, although I had to force quit the app after setting the permission for the toggle to display the wifi networks. |
@ByteHamster @keunes Let me clarify why I said option 1 (granting location permission) cannot be a long-term solution. By long-term I mean when AntennaPod finally targets Android 10+ (currently it's targeting Android 9), In non-technical terms, with Therefore, when AntennaPod targets Android 10+, it loses the ability to get the saved network list. Some replacement is needed. In option 2, the UI will let users easily check the current WiFi to add it to the filter (which we can still get via other API calls). The Manual typing portion is not strictly needed. But without it, users cannot enter only add a network to the filter one at a time (when the device is connected to the network). Option 2 is a straw man proposal, better ideas are welcome. |
Broadening the discussion, I use the wifi filter is to prevent downloading over dodgy and metered links. Several years ago I ran into problems with corrupt downloads, I suspect due to AntennaPod hitting a hotel wifi authentication page and misinterpreting it as data, which may be fixed or has a better non-filter solution. If I could prevent automatic downloads while tethering, perhaps by checking |
@gual How AntennaPod should handle wifi requiring authentication is a valid use case. Please file it as a separate issue though.
@gaul thanks for testing it. On emulator, I did not have to force quit the app. On AntennaPod, I did have to click back to leave Automatic Download Preference screen and reenter for the new settings to show. |
… 10+ (Requires user to grant location permission manually)
…oid10_3387 #3387 short-term (v1.7.3) fix for Auto Downoad WiFi filter UI on Android 10+
We just got the first 1-star rating on Google Play because someone is not happy about the added location permission -.- |
A long-term fix, needed when AntennaPod targets Android 10+ [*], probably will not need location permission anymore. [*] Recall when AntennaPod targets Android 10+, |
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
I tried to do that in #3684. Actually, this is not possible. Starting with Android 8, the SSID of the currently connected network can only be obtained if the app has location permissions. We can obtain the ID of the network, though. When wanting to support Android 10, we now have a problem: We need to store the id of the networks in order to support Android 8 but we can not get a list of the ids on Android 10. Getting the SSID requires location permissions, so we can not use that either. I don't think we should keep using the location permission because we already got quite a few emails by users about that. Therefore, I would vote to remove the WiFi filter feature on Android 10. |
After upgrading to Android 10, Settings shows the "Enable Wi-Fi filter" toggle but not any of the wifi networks:
The text was updated successfully, but these errors were encountered: