Skip to content
This repository has been archived by the owner on Jun 20, 2023. It is now read-only.

Incompatibility warning card on main screen (COMMUNITY) #2481

Closed

Conversation

fynngodau
Copy link
Contributor

@fynngodau fynngodau commented Feb 26, 2021

As discussed in #688 (comment), this PR introduces a warning card on the main screen that informs users when their device is incompatible or only partially compatible with Exposure Notifications.

Screenshots

1: BLE broadcasts not supported 2: BLE scans not supported
Screenshot_1614350339 Screenshot_1614350116

To test

  • On most devices: open app's main screen. Nothing changes with this PR.
  • Use a device that doesn't support broadcasting beacons. Open app's main screen. New card like in screenshot 1. (For example, some operating systems for Fairphone 2 have a Bluetooth driver that doesn't support BLE peripheral mode, see also No beacons sent on Fairphone 2 (Fairphone OS 19.11.2 / Android 7.1.2) #780. Note that I don't own such a device)
  • Use Android emulator. Open app's main screen. New card like in screenshot 2. (Android emulator doesn't support Bluetooth at all)

What this PR doesn't do, but should still be done

  • Add some further information to the app or to the FAQ or another website that can be displayed once the warning card is clicked.
  • Block sharing test results if BLE broadcasts are not supported.

Internal Tracking ID: EXPOSUREAPP-5464

@fynngodau fynngodau requested a review from a team February 26, 2021 14:47
@ralfgehrer ralfgehrer added the community Tag issues created by community members label Feb 26, 2021
@Diapolo
Copy link

Diapolo commented Feb 28, 2021

I own a FP2 and use it with CWA (and microG). As far as I can tell I can send and receive beacons, microG is showing me collected IDs and a changing own ID.

@fynngodau
Copy link
Contributor Author

fynngodau commented Feb 28, 2021

If microg is not showing a very similar warning text to one of the screenshots within its EN settings, this PR would not display any as well, because the code for detecting incompatible devices is actually the same.

@Diapolo Is microg not displaying such a warning? Which operating system have you installed on your Fairphone 2?

@Diapolo
Copy link

Diapolo commented Mar 1, 2021

I'm using LineageOS for microG 17.1 for FP2, while my girlfriend is still using LineageOS 16 with GAPPS and both versions are able to communicate with eachother via EN beacons.

@thomasaugsten
Copy link
Member

@Diapolo is the microgG settings giving some warnings?
@fynngodau can you double check if the check is valid for the FP2 phones?

@fynngodau
Copy link
Contributor Author

To our knowledge there is a driver issue with Fairphone 2 that prevents BLE from working, it is not a hardware limitation. For this reason, it is possible that an OS for this device exists which ships with a driver that implements BLE broadcasting appropriately.

The LineageOS that @Diapolo installed on their device could contain such a driver. If it does, and the device is broadcasting IDs, and if microG is (hence correctly) not showing a warning, then this PR will also not display a warning.

Our latest information is that the stock ROM (though this information could be outdated and there could be a fix in newer versions) doesn't have such a driver, and we heard from users who are correctly seeing the warning and would also see them in CWA with this PR.

@Diapolo
Copy link

Diapolo commented Mar 1, 2021

@Diapolo is the microgG settings giving some warnings?

No there is NO warnings shown and everything EN-related seems to work fine...

@dsarkar dsarkar added the mirrored-to-jira This item is also tracked internally in JIRA label Mar 2, 2021
@dsarkar
Copy link
Member

dsarkar commented Mar 2, 2021

Internal Tracking ID: EXPOSUREAPP-5464

@doak
Copy link

doak commented Mar 4, 2021

Don't know it it is eventually the same code, but you can also use the nrf Connect application to detect if "peripheral mode" is working.

More important, you can check if you actually receive BLE beacons from the other device (which proofs that that device is able to send).

@Diapolo
Copy link

Diapolo commented Mar 5, 2021

Screenshot_20210305-092109_nRF_Connect

This is my device and it shows "Peripheral mode supported" YES.

@fynngodau
Copy link
Contributor Author

fynngodau commented Mar 5, 2021

Thanks for the interesting information @Diapolo, I'll remember that LineageOS for Fairphone 2 supports BLE broadcasting and forward this information to users in case it is needed. I'll also change the PR's description accordingly to avoid confusion (as well as our FAQ).

@vaubaehn
Copy link
Contributor

vaubaehn commented Mar 5, 2021

Just for additional information/reference, and to support @fynngodau findings: No BLE beacons sent on FP2 with Fairphone OS 19.11.2 / Android 7.1.2, as reported here: #780 (comment)
Edit: I overlooked that @fynngodau already referenced that FP2 in his first comment of this PR.

@harambasicluka harambasicluka changed the title Incompatibility warning card on main screen Incompatibility warning card on main screen (COMMUNITY) Mar 16, 2021
@harambasicluka harambasicluka added the enhancement Improvement of an existing feature label Mar 24, 2021
@d4rken d4rken self-assigned this Mar 24, 2021
@dsarkar dsarkar added the Fix 2.1 Fix is planned for 2.1 label Mar 27, 2021
@vaubaehn
Copy link
Contributor

Great to see that you consider to implement the proposed solution for release 2.1! 🎉

@harambasicluka
Copy link
Contributor

@fynngodau also haven't forgotten that one :) But the same applies as here: #2702 (comment)

@AlexanderAlferov AlexanderAlferov self-assigned this Apr 14, 2021
@dsarkar dsarkar added Fix 2.2 Fix is planned for 2.2 and removed Fix 2.1 Fix is planned for 2.1 labels Apr 14, 2021
@d4rken
Copy link
Member

d4rken commented Apr 19, 2021

As this PR didn't make it into 1.15.x, it fell a bit behind, I rebased your commits and got it up to speed so that it should make the schedule for 2.2.x.

Closing in favor of #2873

Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
community Tag issues created by community members enhancement Improvement of an existing feature Fix 2.2 Fix is planned for 2.2 mirrored-to-jira This item is also tracked internally in JIRA
Projects
None yet
Development

Successfully merging this pull request may close these issues.