ground-android
ground-android copied to clipboard
[Data collection] Prompt data collectors to agree to data sharing terms
Related to https://github.com/google/ground-platform/issues/1856
Need to show this data sharing agreement in the app
Detailed FR:
- The first time "Collect data" is tapped for a particular survey, the terms set by the survey organizer will be shown.
- The user must accept these terms before they can begin collecting data. If they don't agree, they'll be returned to the map without being able to provide data.
- The terms cannot be revoked once granted.
@rawbzz @amegantz @vittorino FYI
Data text here :
[Introduction
Ground values your privacy and is committed to protecting your personal information. This form explains how we may collect, use, and share your data for research or other purposes. By signing this form, you consent to the practices described below.
What Data We Collect
We may collect the following types of data: Personal Information: Name, contact details, demographic information (if applicable). Research Data: Responses to surveys, interviews, or other study-related data. Usage Data: Information about how you interact with our services or website (if applicable).
How We Use Your Data
We may use your data for the following purposes: Research: To analyze and publish findings, contribute to scientific knowledge, and improve our services. Internal Analysis: To understand how our services are used and to make improvements. Communication: To contact you with updates, information about research results, or opportunities to participate in future studies.
How We Share Your Data
We may share your data with: Researchers: We may share de-identified data with qualified researchers for approved studies. Partners: We may share de-identified data with partner organizations for research or analysis. Service Providers: We may share your data with trusted third-party service providers who help us deliver our services (e.g., data storage, analysis).
Your Rights
You have the right to: Access Your Data: Request a copy of the personal data we hold about you. Correct Your Data: Ask us to correct any inaccurate or incomplete data. Withdraw Consent: You may withdraw your consent to data sharing at any time. Object to Processing: You can object to certain types of processing (e.g., direct marketing). Data Security
We take appropriate technical and organizational measures to protect your data from unauthorized access, disclosure, alteration, or destruction.expand_more
Data Retention
We will retain your data for as long as necessary to fulfill the purposes outlined in this form or as required by law.
Changes to this Form
We may update this form from time to time. We will notify you of any material changes.
Contact Us
If you have any questions or concerns about our data practices, please contact us at [email protected].
Consent
By agreeing below, I acknowledge that I have read and understood this data sharing consent form. I freely give my consent for Ground to collect, use, and share my data as described above.]
Looks great! In the title I would say something like "Agree to survey data sharing terms to continue". @amegantz for approval.
Do we need the user's consent to be sent up to the server or can we just block the user client side until they consent (per survey) and save that state in the local shared preferences, which is somewhat persistent? If the user wipes or reinstall the app, they will see the dialogs again. Less than ideal but I think that it's not a bad solution for getting this out quickly.
Also how do we want to allow survey organizers to format them? In markdown?
So as per https://github.com/google/ground-platform/issues/1856#issuecomment-2231575473, there are three options:
- Private to survey organizers
- Publicly shareable
- Custom agreement
I presume the mocks make sense for the third case, what exactly do we want to show for the first two cases? The title Agree to survey data sharing terms to continue may not make as much sense.
I can show a small message for now:
Data submissions will only be accessible to survey organizersData submissions can be shared publicly by survey organizers
I would just say "data" instead of "data submissions", and link to CC-BY license in the "public" variant.
@amegantz @rawbzz PTAL?
How about mirroring the language in the consent setup flow?
- Private data sharing: Data will only be shared with survey organizers, who may not share and use collected data publicly.
- Public data sharing: Survey organizers may share and use data publicly under the CC0 license.
Included some alternate dialog options for @rawbzz.
nice yea this works if theres not a long consent form, we can just use a typical dialog design
Almost done, waiting for web impl to finalize (@nwkotto)
Thank you so much! Implementing this now. One thing to consider is that the user may not have internet access so the link will not be useful. Furthermore, I'm having trouble getting the component to let me open up the link. It's probably not too hard if I hand code it, but it doesn't take away the fact that offline users won't be able to see it.
Alternatively, what if we store and display the license locally?
Also, maybe instead of CC0 license, we spell it out for the people in the back?
Creative Commons CC0 1.0 License
How about mirroring the language in the consent setup flow?
- Private data sharing: Data will only be shared with survey organizers, who may not share and use collected data publicly.
- Public data sharing: Survey organizers may share and use data publicly under the CC0 license.
Included some alternate dialog options for @rawbzz.
@amegantz @sufyanAbbasi Imo the CTA should always be "I agree" rather than "Got it", since we want users to not just understand, but to actually agree. We may also want to add a checkbox that says "I have read and understood...", leveraging standard language to that effect.
Also, the header should be "Data sharing agreement", not "Data collection agreement".
Thank you so much! Implementing this now. One thing to consider is that the user may not have internet access so the link will not be useful. Furthermore, I'm having trouble getting the component to let me open up the link. It's probably not too hard if I hand code it, but it doesn't take away the fact that offline users won't be able to see it.
Alternatively, what if we store and display the license locally?
Also, maybe instead of
CC0 license, we spell it out for the people in the back?Creative Commons CC0 1.0 License
Good point, let's store it locally!
How about mirroring the language in the consent setup flow?