Snap Call
Comprehensive Privacy Policy
Effective Date: October 24, 2023 |
Last Updated: May 20, 2024
Welcome to Snap Call ("we," "our," or "us"). Your privacy and data integrity are paramount to us. This Comprehensive Privacy Policy clarifies the nature, scope, purpose, and conditions of data processed through the Snap Call mobile software application (the "Application").
This Application operates predominantly as an on-device utility designed for rapid telephonic execution, contact management, text-to-speech feedback, speech recognition, and emergency SOS dispatch. By initializing, updating, or engaging with this Application, you formally consent to the terms delineated herein.
1. General Principles of Data Handling
Snap Call adheres strictly to the principles of data minimization and privacy by design:
- No External Harvesting: We do not deploy private backend computational engines to harvest, aggregate, or store your personal communications, profiles, or location coordinates.
- On-Device Architecture: The primary scope of user-generated data processing stays local, utilizing your mobile operating system's sandbox parameters and persistent local storage.
- Third-Party Integrity: Any telemetry or programmatic integration utilized is restricted strictly to operational safety parameters (e.g., Google Firebase Crashlytics) or initiated via direct hardware invocation by you (e.g., standard cellular short messaging service).
2. Granular Permissions and Content Types Processed
To support all advanced options and local operations, the Application requests specialized permissions via your device's security system. Below is a detailed breakdown of all device capabilities utilized, structural content types accessed, and operational reasons:
A. Location Coordinates
android.permission.ACCESS_FINE_LOCATION
android.permission.ACCESS_COARSE_LOCATION
NSLocationWhenInUseUsageDescription
- Content Type: High-precision global positioning system (GPS) coordinates, geographical latitude, and longitude.
- Collection Method: Programmatic requests via the hardware-level location service module (using the Geolocator library).
- Operational Purpose: When you activate a full emergency SOS trigger, the app fetches your current coordinates to generate an interactive hyperlink (e.g., Google Maps link). This link is immediately appended to your crisis message to aid emergency response. The app does not monitor your location in the background or store history trail records.
B. Device Contacts and Address Book
android.permission.READ_CONTACTS
android.permission.WRITE_CONTACTS
NSContactsUsageDescription
- Content Type: Stored names, telephone phone numbers, unique contact IDs, telephone categorization tags, and optional contact thumbnail pictures.
- Collection Method: Interfacing with the operating system's native address book API using the Flutter Contacts interface.
- Operational Purpose: Enables selecting, importing, indexing, and organizing your contacts inside the Application. This lets you configure quick-dial boards and select emergency recipients without entering long phone digits manually. All interactions remain completely inside the device's local memory.
C. Short Message Service (SMS) Control
android.permission.SEND_SMS
android.permission.RECEIVE_SMS
- Content Type: Alpha-numeric textual payloads containing crisis status indicators, pre-set distress templates, and your precise location coordinates link.
- Collection Method: Dispatched programmatically via direct native Android SmsManager method channels, or via standard system intent redirection (e.g., url_launcher).
- Operational Purpose: This feature acts as your emergency dispatch line. When you tap the emergency trigger button, it instantly sends an urgent SMS notification to your pre-defined safety contacts. This ensures your safety network is alerted immediately if an incident occurs.
D. Phone Calling Infrastructure
android.permission.CALL_PHONE
- Content Type: External telephone numbers and destination dial configurations.
- Collection Method: Invoked through direct method channels (`com.example.directcall/call`) to trigger immediate outbound calls.
- Operational Purpose: Allows the app to place hands-free direct phone calls to emergency numbers or selected quick-dial configurations instantly, bypassing the secondary dialer confirmation screen during crisis situations.
E. Camera Module Access
android.permission.CAMERA
NSCameraUsageDescription
- Content Type: Real-time video feeds, raw image captures, and custom raster image matrices.
- Collection Method: Operating system interface via the Image Picker module.
- Operational Purpose: Allows you to capture real-time profile pictures and customize quick-dial avatar panels. It also helps you link visual icons to specific phone numbers, making them easy to identify.
F. Storage, Documents, and Photo Gallery
android.permission.READ_MEDIA_IMAGES
android.permission.READ_EXTERNAL_STORAGE
android.permission.WRITE_EXTERNAL_STORAGE
NSPhotoLibraryUsageDescription
- Content Type: JPEG/PNG image assets, documents, database files, and local custom profile elements.
- Collection Method: Core file-system stream storage reads/writes handled via the Path Provider integration layer.
- Operational Purpose: Allows you to browse your phone's media gallery to select custom contact background photos. It also handles saving application configurations locally, so your settings persist between sessions.
G. Audio Input & Speech Interfaces
android.permission.RECORD_AUDIO
NSMicrophoneUsageDescription
NSSpeechRecognitionUsageDescription
- Content Type: Real-time raw ambient sound waves, localized vocal utterances, and phonetic data strings.
- Collection Method: Accesses the microphone stream using the native hardware abstraction library.
- Operational Purpose: Supports speech-to-text features that allow hands-free navigation. This lets you issue verbal commands to look up configurations, speak dial coordinates, or search your list of contacts.
Important Safety Note on Audio Processing: Vocal processing is converted to text locally or handled entirely via the device's native speech-to-text engine. Ambient conversations are never recorded, analyzed, or shared with external servers.
3. Embedded Third-Party Analytics and Telemetry
To ensure application stability and keep the code clean, we include specialized analytics integrations provided by Google LLC:
Firebase Crashlytics
- Data Categories: Low-level runtime crash logs, unhandled stack traces, device physical identifiers (e.g., exact model, processor structure), active system layout variations, and disk performance metrics.
- Method of Delivery: Automated background transmission over HTTPS when an unexpected exception occurs.
- Purpose: Helps detect bugs, performance bottlenecks, and system failures in real time. This ensures emergency features work reliably across thousands of distinct device variants. The collected data is non-identifiable and does not contain personal information.
4. Data Storage and Retention Architecture
Data stored by the application relies entirely on two distinct local storage engines on your device:
- SQLite Database Engine (via sqflite): A secure structured query language container managed within your application's isolated sandboxed storage space. This handles quick-dial records, emergency configurations, custom phone listings, and groups.
- Shared Preferences Framework: Handles micro-level variables, such as system theme preferences, localized language strings, onboarding state flags, and granted permissions records.
Retention Duration: Because this data is stored locally, it remains on your device indefinitely. You can clear it instantly by navigating to your system settings, selecting the application info screen, and choosing the "Clear Data" option, or by uninstalling the Application entirely.
5. Legal Compliance Declarations
A. General Data Protection Regulation (GDPR) Compliance
For individuals residing within the European Economic Area (EEA), we act as the Data Controller for local system operations. However, because we do not transmit personal information to external servers, your data rights are fully managed directly by you:
- Right of Access & Portability: All structured data can be viewed directly within the Application UI or extracted using native device backup tools.
- Right to Erasure ("Right to be Forgotten"): Uninstalling the app permanently deletes all local database entries, profiles, and configuration files from the device.
- Right to Restrict Processing: You can block or revoke permissions (such as Location or Contacts access) at any time through your device's system settings.
B. California Consumer Privacy Act (CCPA) Compliance
We do not collect personal consumer information for monetization, profiling, or direct financial gain. Furthermore:
- We do not sell your personal data to any broker, advertiser, or data harvester.
- We do not share consumer identification statistics with corporate data networks.
- Users can access all application features without fear of discrimination, even if they choose to deny high-level tracking permissions.
6. Children's Privacy Safeguards
This Application does not intentionally collect, manage, or solicit information from anyone under the age of 13. If a parent or guardian discovers that a child has entered sensitive personal data (such as their precise location or contact details) into the local database, please clear the application data or uninstall the Application to remove the records.
7. Ongoing Updates and Policy Revisions
We reserve the right to update this policy document periodically to reflect updates to our codebase, new SDK additions, or changes to global privacy laws. We recommend checking this page regularly to stay informed about how we protect your information. Your continued use of the Application signifies your acceptance of any revisions.
8. Corporate Contact Channels
For questions regarding this privacy policy, local data processing routines, or technical implementation details, please contact us through our official support channels: