Privacy Policy
This Privacy Policy explains how the Sportifka Android app handles data. Sportifka is a fitness app for counting and tracking bodyweight exercises such as push-ups, squats, pull-ups, and dips.
Data processed on the device
Sportifka can process camera frames and motion sensor readings on the user's device to count exercises. Camera frames are analyzed in real time on the device only (to detect the user's face or body pose) and are immediately discarded: they are never recorded, never saved to storage, and never uploaded anywhere by Sportifka. Local workout settings, workout goals, notification settings, height, and weight can be stored locally on the device. If the user connects a Bluetooth heart-rate monitor or a Bluetooth body scale, Sportifka receives heart-rate and weight measurements from those devices; the readings are processed as described below and no other data is read from the devices.
Data collected or transmitted
Sportifka may collect or transmit the following data depending on how the user uses the app:
- Google account data. If the user signs in with Google, Sportifka uses Firebase Authentication and may receive the user's email address and Firebase user ID.
- Workout data. If cloud sync is enabled by signing in, Sportifka may store workout history in Firebase Cloud Firestore, including exercise type, repetitions, duration, timestamp, best set repetitions, and — when a heart-rate monitor was connected during the workout — average and maximum heart rate.
- Profile and body data. If cloud sync is enabled, Sportifka may store the user's height, weight, age, and workout/calorie goals in Firebase Cloud Firestore, together with a day-by-day weight history. Weight entries can come from manual input or from a Bluetooth body scale the user has connected. This data is used to calculate calories and to show weight statistics to the user; it is never visible to friends.
- Achievements. If cloud sync is enabled, achievement identifiers and unlock timestamps may be stored in Firebase Cloud Firestore.
-
Friends and invites. If the user uses friend features, Sportifka stores
data in Firebase Cloud Firestore to connect users:
- Invite links. When a user creates an invite, Sportifka stores a one-time, expiring invite code together with that user's display name and email address. Anyone who has the invite link can read the inviter's display name and email in order to see who invited them; this is why an invite link should only be shared with intended people.
- Connections. When an invite is accepted, Sportifka stores the connection (both users' Firebase user IDs, email addresses, and display names). Once connected, each friend can see the other's display name, email address, Google profile photo, and aggregate workout stats (such as best set today, daily total repetitions, and streak) — never the full workout history.
- Feedback. If the user sends feedback from the app, Sportifka may store the feedback text, timestamp, app locale, current exercise type, and, if signed in, the user's Firebase user ID and email address.
- Motion and counter logs. If the user chooses to submit a counter log (used to improve rep-counting accuracy), Sportifka uploads the readings recorded during that set together with the counted and the user-reported repetition counts, the exercise type, app version, and capture timestamp to Firebase Cloud Firestore. Depending on the counting mode, those readings are motion-sensor samples, ambient-light samples, and measurements computed on the device from the camera image — the size, the position within the frame, and the tilt angles of the region being tracked. The log also records the device manufacturer, model and screen size, and the camera's exposure, sensitivity and supported frame rates, because counting accuracy depends on the hardware and the lighting. These logs never include photos, video, or camera images — images are analyzed on the device and only the numbers above leave it. Before sending, the user can open and read the exact file that will be uploaded.
- Health Connect data. If the user enables Health Connect integration, Sportifka may write exercise sessions, active calories, and heart-rate records to Health Connect with the user's permission.
-
Usage analytics (optional, off until allowed). If the user allows it,
Sportifka sends usage events to Google Analytics for Firebase: which workout program was
selected; when a workout starts, finishes, or ends without a single counted repetition;
whether repetitions were counted with the phone in a pocket or by the camera; the number
of repetitions and the duration of a finished set; when the user starts sharing something
and from which screen; which screens are opened; and signing in. Google Analytics also
collects its own standard technical data, such as a randomly generated app-instance
identifier, device model, operating system version, app version, country, and language.
Sportifka never sends the user's weight, height, age, heart rate, name, email address,
photos, camera frames, or the contents of motion logs to analytics.
While usage analytics is enabled and the user is signed in, these events are tagged with the user's Firebase user ID — a pseudonymous identifier, not a name or an email address — so that a problem the user reports can be traced back to the session that produced it and related to that user's own workouts. Turning usage analytics off clears this identifier and resets the analytics data held on the device. - Diagnostics and crash logs (optional, off until allowed). If the user allows it, Sportifka uses Firebase Crashlytics to collect crash reports, diagnostics, relevant device and app metadata, and installation identifiers needed to diagnose and fix app issues.
How the data is used
- To provide app functionality, including workout history, sync, achievements, friends, and support.
- To let connected friends compare aggregate progress (leaderboards) when the user uses friend features.
- To write workouts to Health Connect when the user explicitly enables that integration.
- To improve rep-counting accuracy from counter logs the user chooses to submit.
- To respond to support and feedback requests.
- To diagnose crashes, improve reliability, and maintain app security.
- To understand how the app is used — which programs and counting modes people choose, and where a workout ends without being counted — and to decide what to improve, when the user has allowed usage analytics.
Data sharing
Sportifka does not sell user data. Sportifka uses service providers, including Firebase services from Google, to provide authentication, cloud storage, feedback storage, crash reporting, and — when the user has allowed it — usage analytics (Google Analytics for Firebase). If the user enables Health Connect, workout data is written to Health Connect on the user's device with the user's permission.
Sharing with other users. Friend features are optional and user-initiated. When a user shares an invite link, the people who open that link can see the inviter's display name and email address. When two users connect, each can see the other's display name, email address, and aggregate workout statistics (such as best set today, daily total repetitions, and streak). Full workout history is never shared with other users. A user can stop sharing at any time by removing the connection.
Choices and controls
Usage analytics and crash reports are two separate permissions, and both are off until the user turns them on. On first launch the app asks about them once, with both switches unchecked; declining is a complete answer and the app never asks again. Either one can be turned on or off at any time under Settings → About, and the change takes effect immediately. Turning usage analytics off also clears the identifier that was in use and resets the analytics data stored on the device.
Cloud sync, friend features, Health Connect, and submitting counter logs are likewise optional and user-initiated, as described above.
Security
Data transmitted by Sportifka to Firebase services is encrypted in transit using HTTPS/TLS. Local data remains on the user's device unless the user chooses features that transmit data, such as Google sign-in, cloud sync, feedback, Health Connect, or crash reporting.
Data retention and deletion
Cloud workout and account data are kept until they are deleted or until the user requests deletion. Feedback may be retained for support and product improvement. Crash and diagnostic data may be retained for a limited period for reliability, security, and legal compliance. Usage-analytics events are retained in Google Analytics for a limited period of up to 14 months and are then deleted automatically.
To request deletion of a Sportifka account and related cloud data, visit Account Deletion.
Children
Sportifka is not directed to children. If you believe a child has provided personal data, contact us so we can take appropriate action.
Contact
Developer: dandroinka
Email: dandroinka@gmail.com