Last updated: 2026-10-18
Effective version: v1.11.0
ZenTap (the "App") is developed by shaojie1988@gmail.com (the "Developer"). This Privacy Policy explains how the App collects, uses, discloses, and protects your information.
1. Information we collect
1.1 Data you provide
- Tap records: the time and date of each tap, plus your current streak. Stored locally on your device and never uploaded to any server.
- Skin unlock state: which skins you have unlocked. Stored locally.
- Reminder settings: the time slots you choose. Stored locally.
1.2 Data collected automatically
None. The App does not use any analytics SDK (no Google Analytics, no Firebase, no Bugly, no Sentry, no third-party tracking of any kind).
1.3 Information we do not collect
We do not collect any of the following:
| Type | Detail |
|---|---|
| Device ID / IDFA | Not collected, not tracked |
| Location | Location permission is never requested |
| Photos | Album write permission (NSPhotoLibraryAddUsageDescription) is requested only when you tap "Save to Album" |
| Contacts | Never requested |
| Microphone | Never requested |
| Health data | No HealthKit integration |
| Cookies / browsing history | The App contains no embedded web views |
2. Data storage and syncing
2.1 Local storage
All tap records, unlock state, and settings are stored in a local SwiftData database on your iOS device.
2.2 iCloud sync (optional)
If you turn on "iCloud Sync" in Settings, your data syncs through Apple's CloudKit private database (iCloud.com.fallenjie.zenwoodenfish) under your own Apple ID. The Developer cannot access this data.
With iCloud sync off, your data stays local and is never synced or backed up to iCloud.
2.3 App Group sharing
Data is shared between the main App, Apple Watch, and Widget through the App Group group.com.fallenjie.zenwoodenfish.shared. This is a standard mechanism inside the iOS sandbox and never leaves your device.
3. Permissions
| System permission | When it is triggered | Purpose |
|---|---|---|
Notifications (UNUserNotificationCenter) | When you enable the "Reminders" switch | Reminds you to focus during the time slots you pick |
Photo Library write (NSPhotoLibraryAddUsageDescription) | When you tap "Save to Album" | Saves your share card to your photo library |
We never request any permission proactively. Every permission is triggered by an action you take.
4. Third-party services
| Service | Purpose | Data flow |
|---|---|---|
| Apple StoreKit | In-app purchases | Handled by Apple, never through a Developer server |
| Apple CloudKit | Optional iCloud sync | Stored in your own Apple ID's private database |
| Apple Push Notification service (APNs) | Reminder notifications | Standard Apple channel, no extra data uploaded |
No third-party SDKs. No ads, no analytics, no tracking.
5. In-app purchases (IAP)
- Skin purchases use Apple StoreKit 2; payment is processed entirely by Apple.
- The Developer cannot access your Apple ID, email, or payment details — only the encrypted transaction provided by StoreKit.
- Refunds are handled under the Apple App Store policy.
6. Children's privacy
The App is not designed for children under 13, but because it collects no data at all — actively or automatically — it is safe for users of any age.
7. Your rights
- View your data: everything lives on your device and can be cleared from Settings → Reset.
- Export your data: not available in the current version; a JSON export is planned for a future release.
- Delete your data: iOS Settings → General → iPhone Storage → ZenTap → Delete App.
- Withdraw from iCloud sync: turn off "iCloud Sync" in Settings and delete the App as described above.
8. Changes to this policy
Material changes will be announced in the App. The date at the top of this page is updated with each revision.
9. Contact us
- Email: shaojie1988@gmail.com
- Response time: within 3 business days
ZenTap v1.11.0 · Privacy Policy