minvws / nl-covid19-notification-app-ios

European Union Public License 1.2
120 stars 36 forks source link

Unable to Re-enable after Location & Privacy Reset #45

Closed johankool closed 4 years ago

johankool commented 4 years ago

Describe the bug, issue or concern

It is possible to get the app in a state where it is disabled and cannot be enabled again.

First reported on Code for NL Slack here.

To Reproduce

Steps to reproduce the behavior:

  1. Have the CoronaMelder app installed and active
  2. Go to iOS Settings
  3. Click on General > Reset
  4. Click "Reset Location & Privacy" and complete reset
  5. Open CoronaMelder and notice it is now disabled
  6. Follow steps to re-enable
  7. The screen to re-enable Exposure notifications in iOS settings is blank

Expected behavior

Of course I should be able to enable the app again.

Workaround

Hard kill of the app and restart of the device and disable Exposure notifications doesn't help. Deleting the app and reinstalling it allows for the app to go through the normal onboarding flow again and the app can be enabled again properly.

Analysis

My interpretation of this issue is that by resetting the privacy settings the app gets into the state where it can walk through the onboarding flow again, but the app thinks it already has done this and so sends the user to Exposure Notification screen in Settings. But Apple made it so that this can only be enabled from the app.

It seems that the app keeps track of wether the user has gone through the onboarding and decides based on that what it does on subsequent launches and also assumes that in the main screen that when it is disabled the user always must go to the Settings. Instead it probably should look at the status of the framework to see if user already gave permission or not. (I am assuming here that it works kinda similar to how location permissions work. I have not delved into the code of the app myself.)

Screenshots

Reset: Reset

Blank screen: Blank screen

There is a movie of the issue on Slack. (GitHub doesn't accept videos afaik.)

Smartphone:

Additional context

Add any other context about the problem here.

Governance

roelspruit commented 4 years ago

Hi. An updated version of the app that has a fix for this "blank screen" will be shipped soon. A lot of people mentioned this issue, thanks for being one of them :)

sbarow commented 4 years ago

@johankool this is updated in v1.0.10, you can update through the App Store.