Git Product home page Git Product logo

covid-alert-app's Introduction

La version française suit.

COVID Alert is now retired: For more information, visit the Government of Canada COVID Alert home page.

COVID Alert Mobile App

Lint + Typscript

Available for iOS and Android:

Download on the App Store Get it on Google Play

Pour iOS et Android:

Télécharger dans l'App Store Disponible sur Google Play

Adapted from https://github.com/CovidShield/mobile (upstream)

This repository implements a React Native client application for Apple/Google's Exposure Notification framework, informed by the guidance provided by Canada's Privacy Commissioners.

Overview

This app is built using React Native and designed to work well with patterns on both Android and iOS devices. It works alongside the COVID Alert Diagnosis Server & COVID Alert Portal.

Local development

Prerequisites

Follow the steps outlined in React Native Development Environment Setup to make sure you have the proper tools installed.

Node

iOS

Android

  • Android device with the ability to run the latest version of Google Play Services or Google Play Services Beta. Sign up for beta program here https://developers.google.com/android/guides/beta-program.
  • You also need a safelisted APPLICATION_ID that will be used to publish to Google Play. You could use APPLICATION_ID from Google Sample App for testing purposes "com.google.android.apps.exposurenotification". Go to Environment config to see how to change APPLICATION_ID.

1. Check out the repository

git clone [email protected]:cds-snc/covid-shield-mobile.git

2. Install dependencies

yarn install
2.1 Additional step for iOS
2.1.1 Install Cocoapods
sudo gem install cocoapods
2.1.2 Install pods
bundle install && yarn pod-install

3. Environment config

Check .env and adjust configuration if necessary. See react-native-config for more information.

Ex:

ENVFILE=.env.production yarn run-ios
ENVFILE=.env.production yarn run-android

4. Start app in development mode

You can now launch the app using the following commands for both iOS and Android.

yarn run-ios
yarn run-android

You can also build the app with native development tool:

  • For iOS, using Xcode by opening the CovidShield.xcworkspace file in the ios folder.
  • For Android, using Android Studio by opening android folder.

Development mode

When the app is running in development mode, you can tap on the COVID Alert logo at the top of the app to open the Test menu. This menu enables you to:

  • Put the app into test mode to bypass the Exposure Notification API check
  • Change the system status
  • Change the exposure status
  • Send a sample notification
  • Reset the app to onboarding state

Note that: Test menu is enabled if the environment config file (.env*) has TEST_MODE=true. To disable test mode UI on production build, simply set it to false in the environment config file TEST_MODE=false.

Customization

You can customize the look and feel of the app largely by editing values found in the Theme File.

Localization

The COVID Alert app is available in French and English. Fully localized content can be modified by editing translations files found in the translations directory. More translations can be added by using the same mechanism as French and English.

After modifying the content you must run the generate-translations command in order for the app to reflect your changes.

yarn generate-translations

Note: For regional content please see updating regional content

Add new translation

  1. Create a new i18n file in src/locale/translations/.
  2. Add the new option pt in translations.js.
  3. Regenerate the translations yarn generate-translations.
  4. Add the new option in src/components/LanguageToggle.tsx.
  5. Add the new option in src/screens/language/Language.tsx.
  6. Add the new option in Xcode Localizations settings (Project -> CovidShield -> Info tab -> Localizations) and make sure Launch Screen.storyboard is checked.

Testing

Who built COVID Alert?

COVID Alert was originally developed by volunteers at Shopify. It was released free of charge under a flexible open-source license.

This repository is being developed by the Canadian Digital Service. We can be reached at [email protected].

Troubleshooting

[Android] Problem with debug.keystore during run Android version

Logs

FAILURE: Build failed with an exception.

* What went wrong:
Execution failed for task ':app:packageDebug'.
> A failure occurred while executing com.android.build.gradle.internal.tasks.Workers$ActionFacade
   > com.android.ide.common.signing.KeytoolException: Failed to read key AndroidDebugKey from store "/Users/YOUR_USER/.android/debug.keystore": keystore password was incorrect

Generate a new debug.keystore:

cd android/app
keytool -genkey -v -keystore debug.keystore -storepass android -alias androiddebugkey -keypass android -keyalg RSA -keysize 2048 -validity 10000

Copy your debug.keystore to ~/.android/debug.keystore:

cd android/app
cp debug.keystore ~/.android/debug.keystore

Now you can run yarn run-android in your root folder.

[MacOS] Problem installing Cocoapods

When following step 2.1.1 Install Cocoapods if you receive an error that looks like the following (Please Note: Error message will not be identical but simliar):

ERROR:  Loading command: install (LoadError)
  dlopen(/Users/$home/ruby/2.6.5/x86_64-darwin18/openssl.bundle, 9): Library not loaded: /usr/local/opt/openssl/lib/libssl.1.0.0.dylib
  Referenced from: /Users/$home/ruby/2.6.5/x86_64-darwin18/openssl.bundle
ERROR:  While executing gem ... (NoMethodError)

This is because the version of Ruby you have installed does not have OpenSSL included.

You can fix this error by installing Ruby Version Manager (if you do not already have it), and reinstalling the version of Ruby required with OpenSSL using the following steps:

  1. Install RVM following the instructions here: https://rvm.io/
  2. Run the following command to install the version of Ruby needed with OpenSSL included, this will take a few minutes so be patient.
rvm reinstall 2.6.5 --with-openssl-dir=/usr/local/opt/openssl

You should now be able to install cocoapods and gem commands should now work.


Application mobile Alerte COVID

Alerte COVID a été mis hors service. Pour en savoir davantage, visitez la page d'accueil d’Alerte COVID du gouvernement du Canada.

Lint + Typscript

Adapté de https://github.com/CovidShield/mobile (voir les modifications)

Ce dépôt met en œuvre une application client React Native pour le cadriciel Notification d’exposition d’Apple/Google, éclairé par l’orientation fournie par le commissaire à la protection de la vie privée du Canada.

Aperçu

Cette application est construite à l’aide de React Native et est conçue pour bien fonctionner avec des modèles sur les appareils Android et iOS. Elle fonctionne de concert avec le Serveur de diagnostic Alerte COVID & Portail Alerte COVID.

Développement local

Conditions préalables

Suivez les étapes décrites dans Configuration de l’environnement de développement React Native pour vous assurer que les outils appropriés sont installés.

Node

iOS

  • XCode 11.5 ou supérieur
  • appareil ou simulateur iOS avec iOS 13.5 ou plus récent
  • Bundler pour installer la bonne version de CocoaPods localement
  • Vous avez également besoin d’un profil de provisionnement avec le droit de notification d’exposition. Pour obtenir de plus amples renseignements, visitez https://developer.apple.com/documentation/exposurenotification.

Android

  • Appareil Android pouvant exécuter la dernière version de Google Play Services ou Google Play Services Beta. Inscrivez-vous au programme bêta ici https://developers.google.com/android/guides/beta-program.
  • Vous avez également besoin d’un APPLICATION_ID protégé qui sera utilisé pour publier dans Google Play. Vous pouvez utiliser l’APPLICATION_ID de Google Sample App à des fins d’essai « com.google.android.apps.exposurenotification ». Aller à Environment config pour voir comment modifier l’APPLICATION_ID.

1. Consulter le dépôt

git clone [email protected]:cds-snc/covid-shield-mobile.git

2. Installer les dépendances :

yarn install
2.1 Étape supplémentaire pour iOS
2.1.1 Installer Cocoapods
sudo gem install cocoapods
2.1.2 Installer les modules
bundle install && yarn pod-install

3. Configuration environnement

Cocher .env et rajuster la configuration si nécessaire. Voir react-native-config pour plus d’information.

Exemple :

ENVFILE=.env.production yarn run-ios
ENVFILE=.env.production yarn run-android

4. Démarrer l’application en mode développement

Vous pouvez maintenant lancer l’application à l’aide des commandes suivantes pour iOS et Android :

yarn run-ios
yarn run-android

Vous pouvez également construire l’application avec un outil de développement natif :

  • Pour iOS, utilisez XCode en ouvrant le fichier CovidShield.xcworkspace dans le dossier « ios ».
  • Pour Android, utilisez Android Studio en ouvrant le dossier android.

Mode de développement

Lorsque l’application est en mode de développement, vous pouvez appuyer sur le logo Alerte COVID en haut de l’application pour ouvrir le menu Test. Ce menu vous permet de :

  • Mettre l’application en mode test pour contourner le contrôle de l’API de notification d’exposition
  • Modifier l’état du système
  • Modifier le statut d’exposition
  • Envoyer un exemple de notification
  • Réinitialiser l’application à l’état d’intégration

Remarque : Le menu de test est activé si le fichier de configuration de l’environnement (.env*) montre « TEST_MODE=true ». Pour désactiver l’interface utilisateur du mode test en production, il suffit de la définir comme False dans le fichier de configuration d’environnement « TEST_MODE=false ».

Personnalisation

Vous pouvez personnaliser l’apparence de l’application en grande partie en modifiant les valeurs du Theme File.

Localisation

L’application Alerte COVID est disponible en français et en anglais. Le contenu entièrement localisé peut être modifié en modifiant les fichiers de traduction qui se trouvent dans le répertoire des traductions. On peut ajouter plus de traductions en utilisant le même mécanisme pour le français et l’anglais.

Après avoir modifié le contenu, vous devez exécuter la commande generate-translations pour que l’application reflète vos modifications.

yarn generate-translations

Ajouter une nouvelle traduction

  1. Créer un nouveau fichier i18n dans src/local/translations/.
  2. Ajouter la nouvelle option pt dans translations.js.
  3. Régénérer les traductions yarn generate-translations.
  4. Ajouter la nouvelle option dans src/components/Languagetoggle.tsx.
  5. Ajouter la nouvelle option dans src/screens/language/Language.tsx.
  6. Ajouter la nouvelle option dans les paramètres Xcode Localizations (Project -> CovidShield -> onglet Info -> Localizations) et assurez-vous que Launch Screen.storyboard est coché.

Qui a conçu Alerte COVID?

Alerte COVID a été développé à l’origine par des bénévoles de Shopify. Il a été diffusé gratuitement en vertu d’une licence ouverte flexible.

Ce dépôt est maintenu par le Service numérique canadien. Vous pouvez nous joindre à [email protected].

Résolution de problèmes

[Android] Problème avec debug.keystore pendant l’exécution de la version Android

Journaux

FAILURE: Build failed with an exception.

* What went wrong:
Execution failed for task ':app:packageDebug'.
> A failure occurred while executing com.android.build.gradle.internal.tasks.Workers$ActionFacade
   > com.android.ide.common.signing.KeytoolException: Failed to read key AndroidDebugKey from store "/Users/YOUR_USER/.android/debug.keystore": keystore password was incorrect

Créer un nouveau debug.keystore :

cd android/app
keytool -genkey -v -keystore debug.keystore -storepass android -alias androiddebugkey -keypass android -keyalg RSA -keysize 2048 -validity 10000

Copiez votre debug.keystore sur ~/.android/debug.keystore :

cd android/app
cp debug.keystore ~/.android/debug.keystore

Vous pouvez maintenant exécuter yarn run-android dans votre dossier racine.

covid-alert-app's People

Contributors

aklef avatar amazingphilippe avatar ankitsingh1492 avatar candidosales avatar craigzour avatar dsamojlenko avatar eliseka avatar emilybulger avatar feralbob avatar gavrix avatar henrytao-me avatar its-anirudh avatar janicduplessis avatar jeberhardt avatar jeffmaher avatar jelen-hc avatar jordanatshopify avatar jsoref avatar katewilhelm avatar kpeatt avatar lchski avatar maxneuvians avatar mtropper avatar nickmalloryods avatar nickmly avatar omartehsin1 avatar pisajew avatar sboots avatar smcmurtry avatar timarney avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

covid-alert-app's Issues

The focus goes to the previous page when swiping with VO

Swipe in VO.

When swiping on the "What COVID Alert does not do", the focus goes to the previous page when you get to the bottom of the page.

It should to to "Back" and then "Next" (this issue has been reported).

iPhone XR 13.5.1

Upstream Issues

Adding this to avoid overlap between this repo and upstream.

Note: Synced to 155

Issue(s) upstream that need to be contributed to as far as fixes (PRs), comments, testing etc..

Issue
Tap on turn on notification does nothing if user block notification in settings on iOS
CovidShield/mobile#163

Status
(i.e has PR, merged etc...)


Issue
iOS: with entitlement iOS can run e2e on two devices

Status
Pr - not merged
CovidShield/mobile#157


Issue
Android end to end - Needs to be able to get correct exposure summary back

Status

Enable COVID-19 Exposure prompt displayed in EN when in FR (iOS)

iPhone XR and iPhone 8
Newly download.
Selected FR as language and went through the onboarding screens - clicked done.
From where are you located - I clicked Skip
prompted with the Enable COVID-19 Exposure Logging and notification pop up Text displayed is EN.
Expected result: should be in FR.
iphone_Enable Expo prompt in EN

"No" is read as "number" with VoiceOver

A couple of screens where it says "No 8-digit number?", VoiceOver reads "No" as "number". So it reads "Number 8-digit number" which is incorrect.

iOS 13.5.1 on iPhone 7

covidalert7
covidalert6

Share your device's random ids message is displayed in En when in Fr (iOS)

iPhone XR version 13.5.1
Province = Ontario
Bluetooth and Notifications are on
language = French

From the menu, selected the Diagnosed with COVID19?
Entered valid 8 digit code (valid)
clicked Submit
Share your device's random ids with COVID Alert? pop up appears.
Expected result - pop up should be in French.
Share_pop up_msg EN

Unable to use 2-fingers-up gesture on some screens to read full page from top when VoiceOver on

While VoiceOver is on and 2 fingers up gesture is used to read the page from top, it doesn't work for most screens. When 2 fingers are flicked up on a screen, it should read all content on the page, starting from top.

It seems to work on screens that don't have the "COVID Alert" image on top of the page.

Please see screenshots of one screen where it works and one where it doesn't.
iOS 13.5.1 on iPhone 7

covidalert5
covidalert4

FR "No 8-digit number" link is left centered

Environments :
Android v6 on Galaxy S7 (Browserstack, apk)

Scenario :

  • Open app
  • Change language to FR
  • Navigate to "Enter your 8-digit number" screen

Issue :
The link for FR "No 8-digit number" is left centered instead of being in the center of the screen like for the ENG screen

bs_realdroid_Mobile_Samsung Galaxy S7-6 0-1440x2560 (2)

Use device locale

It appears that the app will always default to English.

Need to look into use the device language.

This link mentions using React "Native Modules"
https://stackoverflow.com/questions/33468746/whats-the-best-way-to-get-device-locale-in-react-native-ios

import { NativeModules } from 'react-native'

// iOS:
const locale = NativeModules.SettingsManager.settings.AppleLocale // "fr_FR"

// Android:
const locale = NativeModules.I18nManager.localeIdentifier // "fr_FR"

It appears that's no longer available in iOS 13

facebook/react-native#26606

The suggested workaround is:

const getDeviceLocale = () => {
  if (Platform.OS === 'ios') {
    let locale = NativeModules.SettingsManager.settings.AppleLocale // "fr_FR"
    if (locale === undefined) {
        // iOS 13 workaround, take first of AppleLanguages array  ["en", "en-NZ"]
        locale = NativeModules.SettingsManager.settings.AppleLanguages[0];
        if (locale) {
          return locale;
        }
    }
  }

  if (Platform.OS === 'android') {
    return NativeModules.I18nManager.localeIdentifier;
  }

  return 'pt-BR';
}; 

Current

Screen Shot 2020-06-21 at 4 11 11 AM


Screen Shot 2020-06-21 at 4 11 41 AM

Enter code -> submit -> don't agree and close shows wrong screen

After submitting a successful code if the user doesn't agree on the next screen and instead closes the menu via sliding the menu(s) / pages down or via the cancel button the wrong page is displayed

Steps to reproduce

  • Enter a code + submit
  • Either slide down the menu or press cancel

cancel-flow

The "in behind page" is the Daily share content.

Screen Shot 2020-06-23 at 8 31 04 AM

Bluetooth not disabling when done via Control Center menu (iOS)

iPhone XR
Bluetooth settings is ON
Open Control Center, disable Bluetooth
return to the app, open menu, no Bluetooth warning message appears.

Expected behaviour is that disabling Bluetooth via control Center should trigger the message in the app.

bluetooth_off_control center
COVIDAlert_no bluetooth msg

Message can be seen in this screenshot:
bluetooth_off_FR missing accents
This was triggered by turning Bluetooth off via the Settings.

Missing the prompt from iOS to turn on notifications

Expected behavior: after onboarding the system prompts the user to turn on logging and then another prompt to turn on notifications.

Actual behavior: after onboarding the system prompts the user to turn on logging. The user is never prompted to turn on notifications. The menu panel indicates that notifications are off.

This has been tested on iOS, not Android.

Provinces/language are read as radio buttons with VoiceOver and TalkBack

Provinces and language pages are read as radio buttons with both VoiceOver and TalkBack while they're not visually radio buttons. When radio buttons are done, they announce radio button # of 13 or # of 2 but they're not. These shouldn't be coded as radio buttons

Android 8.1.0 on Samsung
iOS 13.5.1 on iPhone 7

1
2

Pages not marked consistently on Android and iOS

Closing a window is not marked consistently with same value. Close, Back and Cancel are used. Cancel seems OK depending on the page. But Close and Back seem to have very similar meanings. Pages should have same value (should be consistent).

Android has a back arrow on all screens but it reads different values that iOS has written out. It should be consistently identified.

Android 8.1.0 on Samsung
iOS 13.5.1 on iPhone 7

3
4
5
6

Missing padding on top of "No 8-digit number?" page

Environments :
Galaxy S7 Android v6 on BrowserStack (apk)

Scenario :

  • Open app
  • Open "Covid alert is off" menu
  • Click on "Diagnosed with covid-19?"
  • Click on "No 8-digit number?"

Issue :
Seems like some padding is missing on the top of the screen so it looks like the "back" button is touching the notification bar of the phone

bs_realdroid_Mobile_Samsung Galaxy S7-6 0-1440x2560

Add design principles?

Thanks so much for iterating on CovidShield in public, the transparency is awesome!

I find the original rationale document to be helpful in understanding the design priorities. As an eventual user who is a software developer, understanding the principles behind the app design is important to me. But it would also be important for any potential contributor.

Have these principles changed at all with the move from the Shopify project to CDS? If not, I'd be happy to submit a PR to bring a copy of that document into this repo so it could be maintained here. WDYT?

Delay in rendering screens when rotating (Android)

Scenario

Samsung Galaxy J3 Prime
Android version 7.0

When rotates the device between portrait/landscape orientation there is a delay in screen rendering before it goes to the proper screen display.

Screenshots
landscape
port

Notification prompt is displayed in English (iOS)

iPhone 8
French
Just downloaded the app, went through the onboarding (no province selected). chose to enable the COVID-19 Exposure logging.
focus is returned to the home screen. tapped to open the menu.
Clicked the turn on notification from menu.
prompt is displayed in English. see screenshot.
Expected result: prompt should be in French.
Notification prompt_EN

Submit button enabled for Android on "Enter your 8-digit number" window

Android v9
Samsung Galaxy S8+
both languages
From menu, under the Diagnosed with COVID-19 section press the Enter number button
From the Enter your 8-digit number window, press again Enter number button
the Enter your 8-digit number window appears.
Submit is enabled. Click Submit - error message appears.
According to Julianna, this behaviour should be the same as iOS. Submit button should be disabled until all 8 digits are entered.
Android_submit enabled

Debug menu option to change "monitoring" to "exposed" is very flaky

Screen Shot 2020-06-18 at 12 35 51 AM

Clicking the menu option to change "monitoring" to "exposed" works about half the time on a real iphone, and never on the ios simulator. Maybe some kind of async issue? Not sure. The relevant code is here: https://github.com/cds-snc/covid-shield-mobile/blob/master/src/testMode/TestMode.tsx#L42

I'm not sure how to fix this and I think this will be crucial for demo'ing - @timarney mind taking a look?

Note that you only see this option with Mock server: enabled.

Is there an apk to test this?

Hi, I was wondering if there's an apk that we can run on Android to test out without having to build it ourselves.

Unable to access 2 links when swiping in VO

Swipe in VO.

Should be able to access "francais" and "next" at the bottom of the pages.

On the set of Onboarding pages, starting with "What COVID Alert does", when swiping in VO, "francais" and "next" are not accessible as it goes to the next page in the set automatically when swiping after the last item.

iPhone XR 13.5.1

Design + content

The screen design(s) + content are still in motion until early next week.

Adding this here as there is no need to flag those issues until the screens get "really" implemented.

Incorrect reading order with VoiceOver on

While VoiceOver is on and the user keeps flicking right to go item by item, some order is not correct on the first 4 screens of the app.

  • after tab 2, right flick takes the user back to tab 1
  • after tab 4, user goes to tab 3

The user should be able to go on all screens in order and all content should be announced.

iOS 13.5.1 on iPhone 7

Cannot scan nav items in "tap for menu" when VO is on

Scenario to reproduce

When VO is on and you tap to open the menu within the Shield VO cannot scan the elements, you need to know exactly where to tap to find items like language, province change, etc.

Expected result

VO should be able to scan all elements when dragging a finger (gesture) on points on the screen.

Bug or issue / WCAG

2.5.1: Pointer Gestures
https://www.w3.org/WAI/WCAG21/Understanding/pointer-gestures.html

Screenshots where available

Image from iOS

Device + OS

iPhone 8 | 13.5.1

Heading levels are not identified

Using VoiceOver screen reader

Headings should be marked up using levels such as Heading level 1, level 2, etc. on all pages.

The screen reader only reads "Heading" and not the level. Only the first heading is read.

Screenshot 2020-06-25 at 4 06 56 PM

iOS XR version 13.5.1

Page not read properly by TalkBalk [Android]

A few issues with COVID Alert menu.

  1. TalkBack is not reading all content on the page. Tried with "Read from top" and tried to flick item by item.
    Highlighted text in yellow is not read.

  2. The page doesn't scroll up automatically when the screen reader when TalkBack reaches the bottom of the visual page.

  3. Content below is not read by TalkBack(highlighted in yellow), unless the user is at the bottom of the page before they start reading from top

  4. After reading the visual content, the content behind this popup is read ("Exposure messages are off" etc)

  5. "Close button" is not highlighted (focus) at the correct location.

Samsung Android version 8.1.0

111
11
1

Rotate screen - Menu is off center and cannot scroll

Environments :
Android v6 on Galaxy S7 (BrowserStack, apk)

Scenario :

  • Open app on phone
  • Open Covid Alert menu
  • Rotate phone to horizontal position

Issue :
Menu is off-center on the screen and we cannot scroll to the bottom of the menu so cannot access the rest of the functionalities

bs_realdroid_Mobile_Samsung Galaxy S7-6 0-1440x2560 (1)

Unable to open menu items with VoiceOver on

While VoiceOver is on and the user is not able to open menu options "Tap for menu". It takes the user to "enter your 8-digit number" screen.

It should take user to the menu.

iOS 13.5.1 on iPhone 7

covidalert2
covidalert3

Ensure flow for turning on / off the API + bluetooth is working.

We need to do a review of the flow and the different combinations of

  • blue tooth on/off & EN/ on/off

I have a PR here - #88

and

@ChrisDryden has a separate PR here #90 that

This PR is a demo of how using the "react-native-bluetooth-status" library can allow us to update the bluetooth status in the app for android and be able to check whether bluetooth is enabled for iOS and Android to render the Bluetooth enablement warning.


Via
@Stephen-PM

Ref: TestFlight 6.0

My bluetooth is off, but I am not getting the warning screen. Also, it should say StopCOVID is OFF.

Background Task elevated priority not using .exposure-notification special terminator

Just flagging this as it came up in the Shopify channel about potentially not leveraging one of the elevated priority flags for background tasks.

Might be worth running this by Apple to ensure we're leveraging the tooling they provide effectively.

https://github.com/cds-snc/covid-shield-mobile/blob/2e6dc8f776a625024a0f1aad68861a281959ec72/ios/CovidShield/Info.plist#L7

https://developer.apple.com/documentation/exposurenotification/building_an_app_to_notify_users_of_covid-19_exposure

"Create a Background Task to Check for Exposure
The app uses a background task to periodically check whether the user may have been exposed to an individual with COVID-19. The app’s Info.plist file declares a background task named com.example.apple-samplecode.ExposureNotificationSampleApp.exposure-notification. The BackgroundTask framework detects apps that contain the Exposure Notification entitlement and a background task that ends in exposure-notification. The operating system automatically launches these apps when they aren’t running and guarantees them more background time to ensure that the app can test and report results promptly."

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.