Privacy Policy
Your journal stays yours.
This policy explains what OhMyCatch keeps on your device, which permissions are optional, and when outside services are used.
This Privacy Policy describes how OhMyCatch handles user data across all supported mobile operating systems (including iOS and Android) and app release 1.4.0 and later local-first releases.
Who we are
OhMyCatch is a personal fishing journal app published by XI SUN (“we”, “us”), operating as gigglegrig / OhMyCatch.
Contact for privacy questions: sx4490550@gmail.com (include “Privacy” in the subject).
Summary
OhMyCatch is a local-first application that stores your fishing catch records directly on your device. We do not require an account. We do not operate an OhMyCatch cloud backend for your catch data. We do not sell your data. Non-development builds use PostHog for anonymous, privacy-bounded product analytics as described below; we do not use advertising or cross-app tracking.
Information stored on your device
Depending on how you use the app, OhMyCatch may store on your device:
- Catch records you create (species, date/time, notes, measurements, and related journal fields)
- Photos you attach to catches (camera or photo library)
- Capture date/time and, when available, GPS metadata read from a selected photo to prefill catch details
- Location coordinates — including precise location — you choose to record for a catch, or that are read from a photo’s EXIF metadata when available
- Local preferences and UI session state (for example filters, unit preferences, or last-used views)
- Bundled catalog and artwork that ships with the app
This information stays in on-device storage (including local SQLite and app storage). Uninstalling OhMyCatch removes the app’s local data from that device, subject to normal operating system storage behavior.
Permissions you control
OhMyCatch may ask for permissions on your device:
| Permission | Why |
|---|---|
| Precise location (When In Use / Foreground) | Show your position on the map and record catch locations when you choose |
| Camera | Take catch photos |
| Photo Library / Media Access | Attach existing photos, read selected photo dates and locations to prefill catch details, or save catch cards to your photo library |
You can deny any permission. Core journaling still works without location or photos; related features are limited until you allow them.
Selected photo metadata
When you select an existing photo, OhMyCatch may read its capture date/time and, when available, its GPS location metadata. This happens on your device and is used to prefill catch details for your review. The selected photo, EXIF metadata, and any saved catch details remain in local app storage.
AI Fish Identification
AI Fish ID is optional. When you explicitly request recognition, OhMyCatch securely transmits the selected catch photo, available capture time and coordinates for that photo, and an anonymous service identifier over HTTPS to the OhMyCatch recognition service (hosted on Cloudflare Workers) and its AI processing provider (DeepSeek). This data is used solely to analyze visual characteristics, return fish-species suggestions, enforce subscription quota, prevent duplicate processing, secure the service, and diagnose failures.
Photos sent for recognition are stored temporarily in secure cloud storage (Cloudflare R2) and deleted automatically after processing or expiry (within 30 days). Recognition results and operational ledger records may be retained for bounded service operation, fraud prevention, quota accounting, and deletion handling. The app does not send notes, contact information, advertising identifiers, or the rest of the catch journal with an AI request.
AI suggestions can be wrong. They are not regulatory, safety, or legal advice.
Subscriptions and In-App Purchases
OhMyCatch offers optional auto-renewable subscriptions (such as AI Fish ID) billed through Apple's App Store In-App Purchase system (StoreKit). All financial transactions, payments, renewals, and cancellations are handled directly by Apple.
OhMyCatch stores only anonymous cryptographic receipt data and anonymous session tokens in your device's secure Keychain to verify your subscription access. We do not receive, collect, or store payment card numbers, billing addresses, or bank details.
You can manage, change, or cancel your subscriptions at any time in your Apple ID account settings or through the "Manage subscription" link in the app's Settings.
Precise location
When you choose to set a catch location or show your position on the map, OhMyCatch may access your device’s precise location in the foreground. Precise location is used to place pins, record catch spots, and optionally derive a location label; it is stored locally with your catch records and is never uploaded to an OhMyCatch server or PostHog. Map rendering and any operating-system geocoding service are provided by Apple or Google under their own terms and may process the location needed for those features.
Network use
Except when you explicitly initiate AI Fish Identification (which temporarily transmits the selected photo for recognition as described above), OhMyCatch does not upload your catch journal, photos, notes, or exact fishing coordinates to an OhMyCatch server.
The app may load map tiles and related location or geocoding services through standard system map components (Apple Maps / Google Maps via react-native-maps) so maps and optional location labels can work. That traffic is handled by Apple, Google, or the operating system under their respective terms and privacy practices, not by an OhMyCatch backend.
Anonymous product analytics
Non-development builds send a limited set of product events to PostHog, a product analytics provider. The app uses an anonymous installation identity; it does not send an account, email address, IDFA, advertising identifier, or cross-app identity. Events may describe coarse interaction and inventory information such as Manual / Photo Single / Photo Multi entry method, a canonical catalog species key for aggregate popularity, bucketed inventory counts, local hour/weekday/month, a coarse record-age bucket, and completed Photo Multi counts. PostHog may also receive standard app/device properties such as platform, app version, locale, screen dimensions, session, and event delivery metadata.
Analytics does not include catch IDs or hashes, raw or custom species text, coordinates, location labels, photo bytes or URIs, EXIF metadata, photo identity or framing, notes, arbitrary form text, the exact catch date/time, or exact record age/delay. The app does not enable screen or touch autocapture, session replay, lifecycle events, remote feature flags, or error/crash analytics. Staging and production use one PostHog project with a logical environment label for internal separation; this label is not a user identity.
Sharing you initiate
If you export, share, or save a catch card or photo, that image leaves the app under your control (for example Messages, Photos, or another app you choose). We cannot recall images you already shared outside OhMyCatch.
Children
OhMyCatch is not directed at children under 13. Do not use the app to store someone else’s personal information without an appropriate basis to do so.
Data deletion
Because OhMyCatch is local-first and has no user accounts:
- Delete individual catches inside the app when that control is available
- Remove photos from a catch inside the app when that control is available
- Uninstall the app to remove remaining OhMyCatch local data from that device
There is no cloud copy of your catch records for us to delete. Anonymous product analytics is not an account profile and cannot be used to reconstruct your journal.
Changes
If OhMyCatch changes its accounts, cloud sync, analytics, permissions, or other data practices, we will update this Privacy Policy and App Store / Play Store privacy disclosures before those changes ship.
Contact
Contact: sx4490550@gmail.com
This page describes OhMyCatch published by XI SUN (individual App Store Connect / Google Play Console seller). It is not legal advice.
隐私政策
你的日记永远属于你。
本政策说明 OhMyCatch 在你的设备上保存哪些内容、哪些权限是可选的、以及何时会使用外部服务。
本隐私政策说明 OhMyCatch 在所有受支持的移动操作系统(包括 iOS 和 Android)以及 1.4.0 及后续本地优先版本中如何处理用户数据。
我们是谁
OhMyCatch 是一款个人钓鱼日记应用,由 XI SUN(“我们”)发布,以 gigglegrig / OhMyCatch 名义运营。
隐私问题联系方式:sx4490550@gmail.com(请在主题中注明“Privacy”)。
摘要
OhMyCatch 是一款本地优先应用,你的钓鱼渔获记录直接保存在设备上。我们不需要账户。我们不为你的渔获数据运营 OhMyCatch 云后端。我们不出售你的数据。非开发版本会按照下文说明使用 PostHog 进行匿名且有隐私边界的产品分析;我们不使用广告或跨应用跟踪。
保存在设备上的信息
根据你的使用方式,OhMyCatch 可能会在设备上保存:
- 你创建的渔获记录(鱼种、日期/时间、备注、尺寸及相关的日记字段)
- 你附加到渔获的照片(相机或相册)
- 从所选照片读取的拍摄日期/时间,以及可用时的 GPS 元数据,用于预填渔获详情
- 你选择记录的渔获位置坐标(包括精确位置),或从照片 EXIF 元数据中读取的坐标(如可用)
- 本地偏好设置和界面会话状态(例如筛选条件、单位偏好或最近使用的视图)
- 随应用内置的图鉴和美术资源
这些信息保存在设备本地存储(包括本地 SQLite 和应用存储)中。卸载 OhMyCatch 会从该设备移除应用本地数据(遵循操作系统正常的存储行为)。
你可控制的权限
OhMyCatch 可能会请求你的设备权限:
| 权限 | 用途 |
|---|---|
| 精确位置(使用时 / 前台) | 在地图上显示你的位置,并在你选择时记录渔获地点 |
| 相机 | 拍摄渔获照片 |
| 相册 / 媒体访问 | 附加已有照片、读取所选照片的日期和地点以预填渔获详情,或将渔获卡片保存到相册 |
你可以拒绝任何权限。没有位置或照片,核心日记功能仍然可用;相关功能会在允许权限后恢复。
所选照片的元数据
当你选择已有照片时,OhMyCatch 可能读取照片的拍摄日期/时间,以及可用时的 GPS 位置元数据。这些处理在你的设备上完成,只用于预填供你确认的渔获详情。所选照片、EXIF 元数据和保存后的渔获详情保存在应用本地存储中。
AI 鱼种识别
AI 鱼种识别功能为可选服务。当你明确发起识别请求时,OhMyCatch 会通过 HTTPS 安全地将所选照片、该照片可用的拍摄时间与坐标上下文,以及匿名服务标识传输至 OhMyCatch 识别服务(托管于 Cloudflare Workers)及其 AI 处理提供商(DeepSeek)。该数据仅用于分析视觉特征、返回鱼种建议、执行订阅配额管理、防止重复处理、保障服务安全以及排查故障。
发送用于识别的照片将临时保存在安全的云存储(Cloudflare R2)中,并在处理完成或过期后自动删除(最长 30 天)。识别结果与运行日志可能会在限定期限内保留以用于服务运行、反欺诈与配额核算。应用不会将你的个人备注、联系信息、广告标识符或其余日记内容随 AI 请求发送。
AI 识别建议可能存在误差,不构成官方物种鉴定、垂钓法规或安全合规建议。
应用内购买与自动续期订阅
OhMyCatch 通过 Apple App Store 应用内购买系统(StoreKit)提供可选的自动续期订阅(如 AI 鱼种识别)。所有金融交易、扣费结算、续期及取消均由 Apple 直接处理。
OhMyCatch 仅在设备的安全钥匙串(Keychain)中本地存储匿名的加密收据数据和会话令牌,用于验证你的订阅权限。我们不会接收、收集或存储支付卡号、账单地址或任何银行信息。
你可以随时通过 Apple ID 账户设置或应用内“设置”中的“管理订阅”入口查看、管理或取消订阅。
精确位置
当你选择设置渔获地点或在地图上显示自己的位置时,OhMyCatch 可能会在前台访问你设备的精确位置。精确位置用于放置图钉、记录渔获地点,并可选择生成位置标签;它与你的渔获记录一起保存在本地,绝不会上传到 OhMyCatch 服务器或 PostHog。地图渲染以及操作系统提供的地理编码服务由 Apple 或 Google 按其各自条款提供,并可能为这些功能处理所需的位置。
网络使用
除了你明确发起 AI 鱼种识别(此时会如上文所述临时传输所选照片用于识别)之外,OhMyCatch 不会将你的渔获日记、照片、备注或精确钓鱼坐标上传到 OhMyCatch 服务器。
应用可能通过标准的系统地图组件(通过 react-native-maps 使用 Apple 地图 / Google 地图)加载地图瓦片及相关位置或地理编码服务,以便地图和可选的位置标签正常工作。这部分流量由 Apple、Google 或操作系统按其各自的条款和隐私实践处理,而非由 OhMyCatch 后端处理。
匿名产品分析
非开发版本会向产品分析服务 PostHog 发送有限的产品事件。应用只使用匿名安装身份;不会发送账户、电子邮件地址、IDFA、广告标识符或跨应用身份。事件可能描述粗粒度的交互和库存信息,例如手动 / 单张照片 / 多张照片录入方式、用于汇总受欢迎程度分析的规范图鉴鱼种键、分桶后的库存数量、本地小时/星期几/月、粗粒度的记录年龄分桶,以及已完成的多照片批量导入数量。PostHog 还可能收到平台、应用版本、语言区域、屏幕尺寸、会话和事件传送元数据等标准应用/设备属性。
分析不会包含渔获 ID 或其哈希、原始或自定义鱼种文本、坐标、位置标签、照片内容或 URI、EXIF 元数据、照片身份或构图、备注、任意表单文本、精确的钓获日期/时间,或精确的记录年龄/延迟。应用不会启用屏幕或触摸自动采集、会话回放、生命周期事件、远程功能开关或错误/崩溃分析。预览和生产使用同一个 PostHog 项目,并用逻辑环境标签做内部隔离;该标签不是用户身份。
你主动发起的分享
如果你导出、分享或保存渔获卡片或照片,该图片在你的控制下离开应用(例如通过“信息”、相册或其他你选择的应用)。我们无法撤回你已经在 OhMyCatch 之外分享的图片。
儿童
OhMyCatch 并非面向 13 岁以下儿童。请勿在没有适当依据的情况下使用本应用存储他人的个人信息。
数据删除
由于 OhMyCatch 是本地优先且没有用户账户:
- 在应用中删除单条渔获(在提供该功能时)
- 在应用中移除渔获的照片(在提供该功能时)
- 卸载应用以移除该设备上剩余的 OhMyCatch 本地数据
我们没有可供删除的渔获记录云端副本。匿名产品分析不是账户资料,也不能用于重建你的钓鱼日记。
变更
如果 OhMyCatch 更改账户、云同步、分析、权限或其他数据处理方式,我们会在这些变更上线前更新本隐私政策以及 App Store / Play Store 隐私披露。
联系方式
本页面描述由 XI SUN(个人 App Store Connect / Google Play Console 卖家)发布的 OhMyCatch。本内容不构成法律意见。