Політика конфіденційності — No Panic
Дата набуття чинності: Буде встановлена перед публікацією в магазинах
Останнє оновлення: 2026-05-07
Видавець: No Panic Labs (тимчасова робоча назва до завершення реєстрації юридичної особи), Україна.
Контакт підтримки: denysdubov88@gmail.com (також єдиний канал для запитів щодо приватності / GDPR).
Канонічна URL-адреса: https://denid88.github.io/nopanic-app/privacy-policy.uk.html
Ця Політика конфіденційності пояснює, як No Panic Labs («ми», «нас», «наш») обробляє інформацію у зв'язку з мобільним застосунком No Panic («Застосунок»). Використовуючи Застосунок, ви підтверджуєте, що ознайомилися з цією Політикою.
Ми розробили No Panic так, щоб він за замовчуванням поважав вашу приватність:
- Без акаунтів, без реєстрації, без входу. Застосунок повністю анонімний.
- Без реклами та без SDK для звітів про збої. Застосунок не зчитує рекламний ідентифікатор (IDFA / GAID) безпосередньо. На iOS, якщо — і лише якщо — ви даєте згоду на аналітику, Застосунок показує системне вікно App Tracking Transparency (ATT) від Apple, щоб Firebase Analytics могла використовувати IDFA у вимірюваннях; відмова на вікні ATT повністю поважається, і Застосунок продовжує працювати без змін.
- Аналітика — суто за явною згодою. Застосунок використовує Firebase Analytics, щоб розуміти агреговане використання, але збір вимкнено за замовчуванням і активується лише після вашої явної згоди — під час онбордингу або пізніше в Налаштуваннях → Приватність. Ви можете вимкнути його будь-коли, і SDK негайно припинить збір.
- Записи Щоденника та обране залишаються на вашому пристрої. Вони ніколи не передаються нам.
- Зовнішні сервіси, з якими взаємодіє Застосунок: постачальник підписок (RevenueCat + Apple / Google), коли ви взаємодієте з вікном оплати; Google Fonts під час завантаження шрифту; і — лише якщо ви дали згоду — Firebase Analytics.
Детальніше — нижче.
1. Хто є контролером даних
Контролером даних є No Panic Labs, зареєстрований в Україні. Контакт: denysdubov88@gmail.com. Ми не призначили офіційного Уповноваженого з питань захисту даних (DPO) — усі запити щодо приватності надсилайте на ту ж адресу.
2. Що Застосунок зберігає на вашому пристрої
Застосунок зберігає таку інформацію лише локально, на вашому пристрої. Ми її не отримуємо і не зчитуємо.
| Сховище | Що містить | Навіщо |
|---|---|---|
SharedPreferences (iOS NSUserDefaults / Android SharedPreferences) — без шифрування |
Прапорець onboarding_completed |
Пропустити онбординг після першого запуску. |
SharedPreferences |
pro_entitlement_cache — JSON-знімок вашого останнього Pro-права (прапорець активності, дата закінчення, прапорець поновлення, ID продукту, прапорець пробного періоду) |
Показувати коректний стан блокувань при холодному старті, зокрема офлайн. |
SharedPreferences |
affirmation_favorites — ID афірмацій, які ви додали в обране |
Дати змогу повертатися до улюблених афірмацій. |
SharedPreferences |
affirmation_of_day_id + affirmation_of_day_date |
Показувати стабільну «афірмацію дня». |
SharedPreferences |
analytics_consent — булеве значення; false за замовчуванням, встановлюється в true лише після вашої явної згоди |
Вмикає збір Firebase Analytics (див. §3.4). |
Локальна база даних SQLite nopanic_journal.db, таблиця journal_entries |
Текст записів Щоденника, необов'язкове emoji настрою, позначки часу створення/оновлення, локальний автоінкрементний ID | Робота функції Щоденника. |
Локальна база даних SQLite nopanic_medication.db |
Назви ліків, дозування, графіки та історія прийомів, які ви вносите у Трекер ліків | Робота функції Трекера ліків. Зберігається лише на вашому пристрої; не передається на наші сервери, до сторонніх служб або систем аналітики. |
| Кеш аудіо, яким керує ОС | Збережений стан відтворення для вбудованих аудіофайлів | Плавне відтворення вправ. |
| Локальний кеш Firebase Analytics (лише за наявності згоди) | Псевдонімний Firebase Instance ID, прив'язаний до застосунку, та черга подій, що очікують завантаження | Буферизація аналітики між мережевими відправленнями. Очищується при відкликанні згоди або видаленні застосунку. |
Усе перелічене вище видаляється, коли ви видаляєте Застосунок або використовуєте дію «Очистити дані» / «Вивантажити застосунок» у вашій операційній системі.
Застосунок не збирає і не зберігає:
- ваше ім'я, email, номер телефону чи точне місцеперебування;
- рекламний ідентифікатор (IDFA / GAID) — Застосунок не зчитує IDFA чи GAID самостійно. На iOS, коли ви натискаєте «Погодитись» на екрані Згоди на аналітику, Застосунок показує системне вікно App Tracking Transparency (ATT) від Apple, щоб Firebase Analytics мала доступ до IDFA для вимірювань; якщо ви відмовите у вікні ATT або відмовитеся від аналітики взагалі — IDFA не передається Firebase. На Android Застосунок не запитує і не зчитує Google Advertising ID (GAID);
- контакти, календарі, фото, введення з мікрофона чи камери;
- історію переглядів або будь-яке використання поза Застосунком;
- push-токени (Застосунок не має push-сповіщень).
Дані про ліки — Назви, дозування, графіки та історію прийомів, які ви вносите у Трекер ліків, зберігаються лише на вашому пристрої у локальній базі даних (SQLite). Вони не передаються на наші сервери, до сторонніх служб або систем аналітики. Якщо ви увімкнули аналітику, можуть надсилатися анонімні підрахунки подій (наприклад, що дозу було відмічено), але без назв препаратів чи будь-яких ідентифікаційних деталей.
3. Треті сторони, які можуть обробляти дані про вас
Використання Застосунку запускає мінімальний, чітко визначений набір взаємодій з третіми сторонами. Перелічуємо їх вичерпно.
3.1 Apple (App Store) та Google (Google Play)
- Що обробляють: ваші транзакції купівлі та підписки, квитанції транзакцій, ваш магазинний акаунт (Apple ID / Google-акаунт) та будь-яку телеметрію, яку платформа вашого пристрою збирає на рівні ОС.
- Навіщо: виставлення рахунків, керування підписками, повернення коштів.
- Де: регулюється власними політиками приватності Apple і Google.
- Наша видимість: ми бачимо анонімні результати покупок через RevenueCat (див. нижче). Ми не бачимо вашого імені, email або платіжних даних.
3.2 RevenueCat
- Що обробляють: псевдонімний RevenueCat App User ID, який SDK генерує на вашому пристрої, ваші події покупки, статус підписки, платформу і країну, а також використовуваний API-ключ RevenueCat. Повну картину див. у політиці приватності RevenueCat.
- Навіщо: ми використовуємо RevenueCat, щоб конфігурувати продукти підписок, перевіряти, чи маєте ви зараз право
pro, і обробляти процеси купівлі / відновлення без створення власного бекенду для валідації квитанцій. - Коли Застосунок звертається до RevenueCat: під час запуску застосунку (щоб отримати поточне право і закешувати його), коли ви відкриваєте вікно оплати (щоб завантажити пропозиції продуктів), і коли натискаєте «Підписатися» або «Відновити».
- Де: сервери RevenueCat. Інфраструктура RevenueCat переважно розташована в США; передача даних регулюється їхніми стандартними умовами захисту даних.
3.3 Google Fonts (завантаження шрифту у рантаймі)
- Що обробляють: стандартний HTTP-запит до CDN шрифтів Google за шрифтом «Quicksand», що включає вашу IP-адресу та базові метадані запиту.
- Навіщо: Застосунок використовує пакет
google_fonts, який завантажує файл шрифту при першому використанні. Після завантаження пакет кешує його локально. - Примітка: якщо ви вимкнете це, частина тексту перейде на системні шрифти. У майбутній версії ми можемо поставляти шрифт як вбудований ресурс, щоб усунути цей зовнішній виклик.
3.4 Firebase Analytics (лише за явною згодою)
- Що це: SDK Firebase Analytics від Google (
firebase_core+firebase_analytics), інтегрований, щоб ми могли розуміти агреговане використання — якими функціями люди користуються, де потоки обриваються, які вправи найкорисніші. Жодний сирий контент (текст Щоденника, обране, повідомлення) не залишає пристрій. - Модель згоди: вимкнено за замовчуванням. SDK ініціалізується зі збором вимкненим. Ми показуємо екран Згоди на аналітику під час онбордингу і дублюємо той самий перемикач у Налаштуваннях → Приватність. Лише після того, як ви натиснете «Погодитись» / увімкнете перемикач, ми викликаємо
setAnalyticsCollectionEnabled(true). Відкликання згоди негайно викликаєsetAnalyticsCollectionEnabled(false)і в процесі роботи блокує всі виклики подій і властивостей користувача. - App Tracking Transparency (лише iOS): коли ви натискаєте «Погодитись» на екрані Згоди на аналітику на iOS, Застосунок викликає ATT API від Apple (через пакет
app_tracking_transparency), щоб показати системне вікно. Ваш вибір визначає, чи може Firebase Analytics прив'язувати рекламний ідентифікатор (IDFA) до подій аналітики. Якщо ви натиснете «Попросити застосунок не відстежувати» (або глобально вимкнули відстеження), IDFA ніколи не передається Firebase — аналітика продовжує працювати лише з псевдонімним Firebase Instance ID. Ми самі IDFA не зчитуємо. Для нашого внутрішнього вимірювання частоти згод ми додаємо результат (authorized/denied/restricted/not_determined/not_supported) як параметрatt_statusдо подіїanalytics_consent_set. Ви можете будь-коли змінити свій вибір щодо відстеження в iOS Налаштування → Конфіденційність і безпека → Відстеження. - Що збирається (лише коли ввімкнено):
- Перегляди екранів (через
FirebaseAnalyticsObserverFirebase, підключений до GoRouter). - Продуктові події, які ми логуємо явно — наприклад,
emergency_tapped,panic_flow_started/panic_flow_tip_viewed/panic_flow_completed/panic_flow_exited,exercise_opened/exercise_session_started/exercise_session_completed,games_opened/game_started/game_completed/game_exited,journal_entry_saved(з бакетизованою кількістю слів на кшталт1-25, ніколи не сирою кількістю і не текстом),affirmation_favorited,paywall_shown/paywall_subscribe_tapped/purchase/restore_completed,settings_opened,legal_opened,support_opened,language_changed,onboarding_*,analytics_consent_shown/analytics_consent_set. Повний перелік живе уlib/core/services/analytics_event.dart. - Параметри подій обмежені неідентифікуючими метаданими: ID сценаріїв, індекси підказок, ID пресетів, назви вправ, назви ігор (наприклад,
snake,tetris,bubble_pop,mandala,memory_pairs), числові ігрові показники (наприклад, довжина змійки, кількість зчищених ліній у тетрісі, % точності у bubble-pop, кількість ходів у memory-pairs), ID продуктів, валюта, вартість плану, тривалість у секундах, відсоток прогресу, бакет кількості слів, джерело відкриття екрана, код мови «з/на», результат ATT (att_status:authorized/denied/restricted/not_determined/not_supported). - Властивості користувача:
has_pro(true / false — чи маєте ви зараз Pro-право),app_language(код вашої мови інтерфейсу),onboarding_completed(true / false). - Автоматичні ідентифікатори, які збирає Firebase: псевдонімний Firebase Instance ID (прив'язаний до застосунку, скидається при видаленні застосунку або відкликанні згоди), IP-адреса (використовується для приблизного геолокаційного визначення і потім відкидається відповідно до політики зберігання Google), модель пристрою, версія ОС, версія застосунку.
- Перегляди екранів (через
- Що ніколи не надсилається: текст Щоденника, заголовки записів Щоденника, текст афірмацій, зміст підказок, нотатки, аудіо, що програється, списки обраного, точне місцеперебування, рекламний ідентифікатор, email, телефон чи будь-який ідентифікатор, прив'язаний до вашого імені.
- Де: сервери Firebase від Google (США та інші регіони Google), регулюється політикою приватності Google та умовами обробки даних Firebase.
- Зберігання: ми налаштовуємо Firebase-проєкт на використання стандартного вікна зберігання даних користувачів від Google (наразі 14 місяців для даних рівня користувача); агреговані звітні дані зберігаються необмежено.
- Як вимкнути: Налаштування → Приватність → перемикач «Аналітика». Це переводить
analytics_consentуfalse, викликаєsetAnalyticsCollectionEnabled(false), і SDK припиняє збір на цьому пристрої.
3.5 Сервіси, яких немає
Для прозорості: Застосунок не містить:
- Amplitude, Mixpanel, PostHog або будь-якого SDK аналітики, відмінного від Firebase Analytics, описаної в §3.4;
- Sentry, Crashlytics, Bugsnag або будь-якого іншого SDK для звітів про збої;
- рекламних SDK;
- SDK для соціального входу;
- Facebook SDK, TikTok SDK, AppsFlyer, Adjust, Branch або подібних SDK атрибуції;
- сервісів push-сповіщень (FCM/APNs messaging не інтегровано, хоча Firebase Core присутній).
4. Дозволи, які запитує Застосунок
Застосунок не запитує доступ до мікрофона, камери, місцеперебування, контактів, фото, календаря чи Bluetooth. На iOS Застосунок запитує дозвіл Apple App Tracking Transparency (ATT) — лише коли ви явно погоджуєтеся на аналітику на екрані Згоди на аналітику; ніколи не при першому запуску і ніколи, якщо ви відмовляєтеся від аналітики. Мета описана в §3.4.
Застосунок відтворює вбудоване аудіо за допомогою стандартних API ОС. Щоб увімкнути фонове відтворення для вправи Sleep — аби музика продовжувала грати, коли ви блокуєте екран, і щоб залишалися доступними елементи керування на екрані блокування / у Центрі керування / у сповіщеннях — Застосунок декларує такі можливості ОС, що не потребують запиту до користувача: на Android — дозволи WAKE_LOCK, FOREGROUND_SERVICE та FOREGROUND_SERVICE_MEDIA_PLAYBACK і службу медіа-відтворення на передньому плані (надається пакетом audio_service); на iOS — значення audio у масиві UIBackgroundModes файлу Info.plist. Жодна з цих можливостей не показує інтерактивного запиту дозволу і не надає Застосунку доступу до ваших даних — вони лише дозволяють аудіо-двигуну Застосунку продовжувати відтворення, поки Застосунок працює у фоні або екран вимкнений.
5. Діти
Застосунок не призначений для дітей до 13 років і свідомо не збирає персональних даних від них. Якщо ви вважаєте, що Застосунком користувалася дитина молодша за мінімально допустимий вік, зв'яжіться з нами, щоб ми могли допомогти.
6. Ваші законні права (GDPR, UA, UK GDPR, CCPA)
Оскільки Застосунок не пов'язує жодних даних з вашою особистістю, багато традиційних прав (доступ, експорт, видалення «ваших персональних даних») не застосовуються у звичному сенсі — немає жодного серверного запису, пов'язаного з вами. Тим не менш, ви маєте право:
- Доступ / перенесення: експортувати записи Щоденника вручну, копіюючи їх із Застосунку. Вбудована функція експорту поки що недоступна; зв'яжіться з нами, якщо потрібна допомога.
- Видалення: видалити окремі записи Щоденника безпосередньо в Застосунку; видалити всі дані Застосунку, видаливши його, використавши дію «Очистити дані» / «Вивантажити застосунок» / «Скинути» у вашій ОС або скинувши пристрій.
- Дані підписки: для записів про купівлі та підписки, що зберігаються в Apple, Google або RevenueCat, звертайтеся зі своїми правами безпосередньо до цих постачальників — саме вони мають можливість ідентифікувати вас за магазинним акаунтом. Ми допоможемо, якщо ви зв'яжетеся з нами.
- Заперечення / обмеження / скарга: ви можете заперечити проти обробки або обмежити її. Якщо ви перебуваєте в ЄС/ЄЕП, Великій Британії чи Швейцарії, ви також можете подати скаргу до національного органу із захисту даних. Українські користувачі можуть звернутися до Уповноваженого Верховної Ради України з прав людини. Мешканці Каліфорнії можуть скористатися правами за CCPA; ми не «продаємо» та не «ділимося» персональною інформацією для цілей поведінкової реклами між контекстами.
Щоб скористатися будь-яким правом, напишіть на denysdubov88@gmail.com.
7. Правова підстава (ЄС/ЄЕП, Велика Британія, Швейцарія)
Коли застосовується GDPR або рівнозначний закон, правовими підставами для мінімальної обробки, описаної вище, є:
- Договір (Ст. 6(1)(b) GDPR) — надання Застосунку та, за потреби, обробка вашої підписки.
- Законний інтерес (Ст. 6(1)(f) GDPR) — кешування стану прав, щоб Застосунок працював офлайн; завантаження шрифту, який використовує інтерфейс; підтримання цілісності вікна оплати.
- Згода (Ст. 6(1)(a) GDPR) — єдина правова підстава для Firebase Analytics. Збір вимкнено за замовчуванням і активується лише після того, як ви явно погодитеся на екрані Згоди на аналітику (або в Налаштуваннях → Приватність). Ви можете відкликати згоду будь-коли тим самим перемикачем — це не впливає на вашу здатність користуватися Застосунком. Відкликання не впливає на законність обробки, здійсненої до відкликання.
8. Міжнародні передачі даних
Сам Застосунок зберігає дані на вашому пристрої у країні вашого проживання. Коли ви взаємодієте з вікном оплати, RevenueCat та App Store / Google Play можуть передавати дані в інші країни (переважно до США) за власними запобіжними механізмами (Стандартні договірні положення та еквівалентні механізми). Якщо ви ввімкнули аналітику, Firebase Analytics також передає дані подій до інфраструктури Google (переважно в США) за Стандартними договірними положеннями Google та еквівалентними механізмами.
9. Зберігання
- Дані на пристрої: зберігаються, доки ви не видалите їх чи сам Застосунок.
- RevenueCat: зберігається відповідно до політики RevenueCat щодо даних підписок.
- Apple / Google: зберігаються відповідно до їхніх політик.
- Firebase Analytics (лише якщо ви дали згоду): дані на рівні користувача зберігаються протягом стандартного 14-місячного вікна, налаштованого в нашому Firebase-проєкті; агреговані звітні дані зберігаються необмежено. Відкликання згоди або видалення Застосунку зупиняє подальший збір; уже завантажені події можна видалити за запитом (див. §6).
- Листування з підтримкою: якщо ви пишете нам на denysdubov88@gmail.com, ми зберігаємо ланцюг листів до 24 місяців, потім видаляємо.
10. Безпека
Ми зводимо серверну обробку до мінімуму і покладаємося на пісочниці Apple та Google для захисту даних, що зберігаються на вашому пристрої. Записи Щоденника не шифруються Застосунком понад те, що надає операційна система у стані спокою; якщо ваш пристрій підтримує повнодискове шифрування та ви увімкнули код доступу — ваші дані від цього виграють. Ми рекомендуємо підтримувати ОС актуальною та використовувати код доступу чи біометричне розблокування.
11. Зміни до цієї Політики
Ми можемо оновлювати цю Політику у процесі розвитку Застосунку. Зміни відображатимуться у даті «Останнього оновлення» вище та, якщо суттєві, будуть виділені в Застосунку чи в картці магазину. Продовження використання після набуття чинності оновленою Політикою є її визнанням.
12. Контакт
Запитання, запити чи скарги стосовно цієї Політики: denysdubov88@gmail.com.
Додаток A — Технічний реєстр (для повноти)
Цей розділ віддзеркалює те, що розробник чи аудитор побачив би у кодовій базі, щоб нічого в Застосунку не залишалося нерозкритим.
- Платформа: Flutter (Dart
^3.11.3), поширюється глобально в Apple App Store і Google Play; ім'я пакета / ідентифікатор збіркиapp.nopanic. - Сторонні пакети, що можуть звертатися до мережі або сховища ОС:
purchases_flutter(RevenueCat),firebase_core+firebase_analytics(Firebase Analytics — за явною згодою),app_tracking_transparency(лише iOS — показує системне вікно ATT, коли дано згоду на аналітику, як описано в §3.4),google_fonts(завантаження шрифту в рантаймі),just_audio+audio_service+audio_session(локальне відтворення аудіо, включно з фоновим відтворенням і елементами керування на екрані блокування / у Центрі керування / у сповіщеннях для вправи Sleep через спеціальнийAudioHandler; інші вправи використовують лише чистийjust_audio),shared_preferences(локальне сховище «ключ-значення», зокрема прапорецьanalytics_consent),sqflite(локальний SQLite),url_launcher(відкриває зовнішні URL у системному браузері, коли ви натискаєте «Умови», «Приватність» чи «Підтримка»),package_info_plus(зчитує локальну версію/номер збірки застосунку). - Зовнішні URL, що відкриваються (лише коли ви їх натискаєте): URL Умов, URL Приватності та
mailto:посилання на email підтримки. - API-ключі: публічний SDK-ключ RevenueCat вкомпільовується у збірку через
--dart-define. Конфігурація Firebase (GoogleService-Info.plist/google-services.json) поставляється на етапі збірки. Ці ключі ідентифікують застосунок, а не вас. - На момент написання жоден бекенд, що належить Видавцю, не обробляє дані користувачів; аналітичні дані обробляються Google від нашого імені виключно після явної згоди.
Додаток B — Зведення з видалення даних (для рецензентів магазинів)
Якщо рецензент магазину запитає «як користувач видаляє свої дані?»:
- У Застосунку: відкрийте Щоденник, видаляйте записи поштучно. У Трекері ліків видаляйте препарати та записи історії прийомів поштучно.
- Видаліть Застосунок або скористайтеся дією «Очистити дані» (Android) / «Вивантажити застосунок + видалити» (iOS). Це видаляє всі дані Застосунку на пристрої, включно із записами Щоденника, обраними афірмаціями, прапорцем онбордингу, кешем Pro-права, прапорцем
analytics_consentта Firebase Instance ID. - Щоб припинити поточний збір аналітики, відкрийте Налаштування → Приватність і вимкніть перемикач «Аналітика». Щоб також видалити раніше завантажені події аналітики, напишіть на denysdubov88@gmail.com — ми ініціюємо запит на видалення в Firebase-проєкті.
- Щоб скасувати чи видалити дані підписки, що зберігаються в Apple, Google або RevenueCat, скористайтесь інструментами керування підписками у вашому акаунті App Store чи Google Play або напишіть на denysdubov88@gmail.com по допомогу.