Code Monkey home page Code Monkey logo

covidwatch-ios-en's People

Contributors

ianbrown avatar jamespetrie avatar madhavajay avatar piyush-covidwatch avatar rasprague avatar whaber avatar zssz avatar

Stargazers

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

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

covidwatch-ios-en's Issues

v4

Figma: https://www.figma.com/file/36hmE4QIKKGXTcLBhHGzve/Covid-Watch-App-v4-dev?node-id=0%3A1

Execution plan

  • Define region data structure
  • Set region read-only data HTTPS endpoint
  • Update Splash screen
  • Add Region Selection screen
  • Update Onboarding and Setup screens
  • Update Home screen
  • Update Menu screen
  • Update Possible Exposures screen: expandable rows
  • Update Reporting screens (Careful, spec not final)

Note: There are several unaddressed comments and change requests in the Figma file.

Third Party Contributions

Does this project support any type of third party contributions? In my specific case, I am thinking of UI contributions. I am a student/researcher at the University of Arizona and so am using this app, and I'd like to contribute in terms of how the UI could be improved, particularly as related to possible exposure notifications and the data that is presented.

Unfortunately, given that I am just a random person, I don't have the proper entitlements to run this app even in the simulator to test changes, so I'm hoping there may be another way to contribute.

Enable data protection to protect data at rest

The Data Protection entitlement is not enabled within the Xcode project for the App. When enabled, the Data Protection capability will automatically protect all files created by the App with the strongest Data Protection class, NSFileProtectionComplete; this protection class ensures that the file is encrypted with the user's passcode whenever the device is locked.

As described in the iOS Security Guide in the "Data Protection" section, the default Data Protection class for files since iOS 7 is NSFileProtectionCompleteUntilFirstUserAuthentication, which only encrypts the user's data until the very first time they unlock their device:

Enable the Data Protection entitlement in the Xcode project configuration of the App. As shown in the screenshot, this setting is available in the "Capabilities" tab within Xcode.
Because the entitlement will cause iOS to encrypt all the App's files when the device is locked, it might cause problems if the App tries to access its files while running in the background (ie. when the device might be locked). To work around this problem, App can lower the protection level to NSFileProtectionCompleteUntilFirstUserAuthentication for the specific files that need to be accessed while in the background, as described in the Encrypting Your App's Files article within the Apple documentation.

Lastly, the applicationProtectedDataWillBecomeUnavailable: and applicationProtectedDataDidBecomeAvailable: App delegate methods can be used to manage the App's access to protected files.

"Time Since Last Contact"

post v3
Requested by Bermuda Dept of Public Health
As an end user, I can see how recently I was in contact with another user (i.e., when I last logged an RPI) so that I can see that my app is working correctly.
This will also build excitement and engagement with technical users.
We'd want to bucket the times and not provide an exact time, but something like "In the last 10 minutes", "last Hour", "in the last 24 hours", "in the last 3 days", "In the last 7 days", "Greater than 7 days".

Disable custom keyboards

Custom keyboards should be disabled as they have little value for this app and they also have security risks.


// To be added to the App's UIApplicationDelegate
- (BOOL)application:(UIApplication *)application shouldAllowExtensionPointIdentifier:(UIApplicationExtensionPointIdentifier)extensionPointIdentifier
{
    // Disable third-party keyboards on iOS 8+
    return NO;
}

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.