개인정보처리방침
본 방침은 개인 개발자 Glenn Yu(이하 "운영자")가 제공하는 Android·iOS 앱 SnackPlay(미니게임)와 PaletteWeather(날씨)가 처리하는 정보를 앱별로 나누어 설명합니다. 두 앱은 같은 운영자 서버(gwangy.com)를 쓰지만 처리하는 정보가 다르므로, 사용 중인 앱의 절을 확인해 주세요.
핵심 요약: SnackPlay는 게스트 계정(닉네임·기기 식별자)과 게임 기록을 운영자 서버에 저장하며, 앱의 설정 → 계정 탈퇴 또는 계정 삭제 안내 페이지의 방법으로 삭제할 수 있습니다. PaletteWeather는 계정이 없고, 날씨 조회를 위해 약 1km 격자로 반올림한 좌표와 도시 검색어를 이용자 식별 정보 없이 서버로 보냅니다. 두 앱 모두 Google AdMob 광고와 Google Firebase(분석·오류 보고)를 사용합니다.
1. 두 앱 공통 사항
1-1. 외부 서비스(SDK)
| 서비스 | 처리할 수 있는 정보 | 목적 |
|---|---|---|
| Google AdMob · User Messaging Platform(UMP) | 광고 식별자(Android 광고 ID·앱 세트 ID, iOS IDFA—추적 허용 시), IP 주소에서 추정한 대략적 위치, 광고 노출·클릭 등 상호작용, 기기·앱 정보와 진단 정보, 동의 상태 | 광고 제공·측정, 빈도 관리, 부정 트래픽 방지, 지역별 광고 동의 관리 |
| Unity Ads (Android 앱만) | Android 앱에는 AdMob 미디에이션용 Unity Ads SDK가 포함되어 있고 앱 시작 시 초기화됩니다. 광고 식별자, 대략적 위치, 광고 상호작용, 기기·진단 정보를 처리할 수 있습니다 | 광고 제공과 부정 이용 방지 |
| Firebase Analytics | 앱 인스턴스 ID, 화면 조회·기능 사용·광고 노출 등 이벤트, 기기 모델·OS·앱 버전·언어, IP 주소에서 추정한 대략적 지역. iOS에서 추적을 허용하면 IDFA도 함께 처리될 수 있습니다 | 기능 이용 현황 분석과 품질 개선 |
| Firebase Crashlytics | 충돌·오류 발생 시 스택 트레이스, 기기 상태(메모리·저장 공간 등), 기기 모델·OS·앱 버전, 설치 식별자 | 오류 원인 파악과 수정 |
| Firebase Remote Config | 국가·언어·시간대, OS·앱 버전, 설치 식별자 | 앱 설정값 원격 변경, 기능 실험 |
- Firebase Analytics와 Crashlytics는 두 앱 모두 기본으로 켜져 있고 앱 안에서 끄는 설정은 없으며, 광고 동의(UMP) 선택과 관계없이 동작합니다.
- 광고 SDK(AdMob)는 UMP 동의 절차가 끝나 광고 요청이 허용된 뒤에 시작됩니다. 동의가 필요한 지역(EEA·영국 등)에서는 앱 설정의 개인정보 옵션에서 동의를 다시 선택할 수 있습니다.
- iOS 앱 추적 투명성(ATT): 두 iOS 앱은 광고를 위해 추적 허용 여부를 묻습니다. 허용하지 않으면 IDFA는 광고·분석에 쓰이지 않으며, 설정 → 개인정보 보호 및 보안 → 추적에서 언제든 바꿀 수 있습니다.
- Android 광고 ID: 설정 → 개인정보 보호 → 광고에서 광고 ID를 재설정하거나 삭제할 수 있습니다.
1-2. 서버 접속 기록
운영자 서버(gwangy.com)는 운영과 보안을 위해 접속·오류 기록(IP 주소, 요청 주소, 시각, 앱이 보내는 플랫폼·앱 버전 정보 등)을 남길 수 있습니다. 이 기록은 이용자 계정과 연결하지 않으며, 보존 기간은 따로 정해 두지 않았습니다.
2. SnackPlay
2-1. 처리하는 정보
| 구분 | 처리 항목 | 목적 |
|---|---|---|
| 게스트 계정 | 닉네임(직접 입력하거나 건너뛰면 자동 생성), 서버 계정 번호, 게스트 로그인용 기기 식별자(Android ANDROID_ID / iOS identifierForVendor), 플랫폼, 기기 모델명, OS·앱 버전 | 계정 생성·로그인, 기기 정보 호환성 확인 |
| 프로필 이미지 (선택) | 이용자가 고른 사진을 기기에서 긴 변 1024px 이하로 줄여 다시 저장한 이미지 파일과 그 주소 | 친구 목록·검색 결과의 프로필 표시 |
| 게임 기록 | 게임 종류, 점수, 오답 수, 난이도, 플레이 시간, 게임 시드, 기록 검증값. Android 앱은 점수 검증을 위해 탭 시각·입력 내용 기록도 보냅니다(iOS 앱은 기본적으로 보내지 않으며 원격 설정으로 켤 수 있습니다) | 랭킹·통계 제공, 점수 위변조와 매크로 탐지 |
| 활동 기록 | 출석, 미션, 이벤트 참여·보상, 시즌, 데일리 챌린지, 스낵 사용 내역 | 게임 진행과 보상 지급, 중복 지급 방지 |
| 소셜 기능 | 친구 추가·삭제 기록, 길드 이름·소개(직접 입력)·가입·기여·초대 기록. 닉네임·길드 검색어는 결과 조회에만 쓰이고 서비스 DB에 저장하지 않습니다 | 친구·길드 기능 제공 |
| 의견·신고 (선택) | 이용자가 작성한 의견·신고 내용, 분류, 기기 모델·OS·앱 버전 문자열. 연락처는 받지 않습니다 | 문의 대응, 서비스 개선, 부적절한 이용 확인 |
| 오류 보고 | Firebase Crashlytics 오류 보고(서버 계정 번호 연결). Android 앱은 다음 실행 시 기기에 쌓인 오류 기록(스택 트레이스, 스레드, 기기 정보)을 운영자 서버로도 자동 전송하며, 이때 인증 토큰·이메일·UUID 형식 값은 가려서 보냅니다 | 오류 원인 파악과 수정 |
| 푸시 알림 | Android: Firebase Cloud Messaging 토큰(서버에 저장). iOS: 현재 푸시 알림 등록을 하지 않아 토큰이 발급되지 않습니다 | 출석·미션·친구 등 게임 알림 |
| 분석·성능 | Firebase Analytics 이벤트(게임 시작·완료, 점수·정답률·플레이 시간, 광고 노출, 탈퇴 사유 등)와 Firebase Performance 측정값(앱 시작 시간, 네트워크 응답 시간 등). Analytics와 Crashlytics에는 닉네임이 아닌 서버 계정 번호를 사용자 ID로 설정합니다 | 게임 밸런스·품질 개선 |
| 광고 | 1-1절의 AdMob·UMP(두 플랫폼), Unity Ads(Android) 처리 항목 | 무료 게임 운영을 위한 광고 게재와 보상형 광고 확인 |
SnackPlay는 이메일, 전화번호, 실명, 정확한 위치, 연락처, 마이크·카메라 정보를 수집하지 않으며, 현재 유료 결제 기능이 없습니다.
2-2. 다른 이용자에게 보이는 정보
- 랭킹: 닉네임, 점수, 난이도, 기록 시각
- 친구 목록·닉네임 검색: 닉네임, 프로필 이미지, 최고 점수
- 길드: 길드 이름·소개와 멤버 닉네임
2-3. 기기에만 저장되는 정보
차단한 이용자 목록, 금칙어 사전, 로컬 랭킹 기록, 알림·소리 등 설정, 프로필 사진 축소 작업은 기기 안에서만 처리·저장됩니다. Android 기기 백업에서는 로그인 토큰·게임 DB·이용자 설정이 제외됩니다.
2-4. 보유 기간과 파기
| 항목 | 보유 기간 |
|---|---|
| 계정·게임 기록·활동 기록·의견·오류 보고(운영자 서버) | 계정을 삭제할 때까지 보관합니다(부정행위 검증 기록은 그 전에 서버 정리 작업으로 삭제될 수 있습니다). 오래 접속하지 않은 계정을 자동으로 파기하는 기간은 없습니다 |
| 닉네임, 현재 프로필 이미지 파일과 주소, 기기 식별자, 푸시 토큰, 로그인 연결 식별자 | 계정 삭제 요청 즉시 서버에서 삭제 |
| 그 밖의 계정 기록(닉네임 없음), 게임·활동 기록, 친구·길드 기록, 의견·신고, 서버로 보낸 오류 보고, 로그인 갱신 토큰 | 계정 삭제 요청일로부터 30일이 지난 뒤 매일 실행되는 정리 작업에서 영구 삭제. 단, 길드를 소유한 계정은 길드를 정리할 때까지 자동 삭제되지 않습니다 |
| 교체 전에 올렸던 프로필 이미지 파일 | 서버가 계정과 연결해 기록하지 않아 계정 삭제 시 자동 삭제되지 않습니다 |
| Firebase Crashlytics 오류 보고 | Google이 90일간 보관 후 삭제 |
| Firebase Analytics 사용자·이벤트 단위 데이터 | Google Analytics 데이터 보존 설정에 따름(최대 14개월). 개인을 식별하지 않는 집계 통계는 남을 수 있음 |
| 광고 데이터 | Google·Unity의 정책에 따름 |
삭제 방법과 삭제되지 않는 항목의 자세한 설명은 SnackPlay 계정 삭제 안내를 참고하세요.
2-5. 이용자의 권리
- 정정: 앱의 설정에서 닉네임과 프로필 이미지를 직접 바꿀 수 있습니다.
- 삭제: 앱의 설정 → 계정 탈퇴에서 바로 삭제하거나, 앱 없이 gwangy.claw@gmail.com으로 닉네임을 적어 요청할 수 있습니다.
- 열람·처리 정지 등: 서버에 저장된 내 정보의 열람이나 그 밖의 권리 행사는 위 이메일로 요청할 수 있으며, 계정 확인 후 서버에 저장된 항목을 기준으로 회신합니다.
- 알림: 앱과 기기 설정에서 알림을 끌 수 있습니다. Android에서는 알림을 꺼도 토큰이 갱신되면 서버에 저장될 수 있습니다.
3. PaletteWeather
3-1. 처리하는 정보
| 구분 | 처리 항목 | 목적 |
|---|---|---|
| 위치 (선택) | 위치 권한을 허용하면 기기가 측정한 현재 위치 좌표를 사용합니다(Android는 정확한 위치·대략적 위치 권한을 함께 요청, iOS는 앱 사용 중 위치 권한). 백그라운드 위치 권한은 요청하지 않습니다 | 현재 위치의 날씨·대기질·예보 조회 |
| 날씨 조회 좌표 | 운영자 서버(gwangy.com)로는 좌표를 소수점 둘째 자리(약 1km 격자)로 반올림해 보냅니다. 서버 장애 시에는 앱이 Open-Meteo에 직접 날씨를 요청하며 이때도 조회에 필요한 좌표가 전달됩니다. 현재 Android 앱의 예비 예보·대기질 요청은 반올림하지 않은 좌표를 보냅니다(iOS 앱은 모든 요청에서 반올림합니다) | 날씨 데이터 조회 |
| 지역 이름 변환 | 좌표를 지역 이름으로 바꾸기 위해 반올림하지 않은 좌표가 운영체제 지오코딩 서비스(Android: Google Play 서비스, iOS: Apple)로 전달됩니다 | 현재 위치의 지역 이름 표시 |
| 도시 검색어 (선택) | 이용자가 입력한 도시 이름과 언어. 운영자 서버와 Open-Meteo 지오코딩에 함께 보내며, 운영자 서버는 OpenStreetMap Nominatim에 다시 조회할 수 있습니다 | 도시 검색과 추가 |
| 요청 정보 | 플랫폼, 앱 버전, 앱 이름이 담긴 요청 헤더와 IP 주소 | 호환성 관리, 요청 보호 |
| 분석·오류 | Firebase Analytics 이벤트(날씨 화면 조회, 테마 선택, 날씨 조회 결과·응답 시간, 광고 노출·클릭·수익 이벤트). Android 앱은 날씨 화면 조회 시 역지오코딩한 지역 이름(보통 시·구 단위)을 보내고, iOS 앱은 좌표나 현재 위치의 지역 이름을 보내지 않으며, 저장한 도시를 삭제할 때 그 도시 이름을 보냅니다. Firebase Crashlytics 오류 보고. 사용자 ID는 설정하지 않습니다 | 기능 이용 현황 분석, 오류 수정 |
| 광고 | 1-1절의 AdMob·UMP(두 플랫폼), Unity Ads(Android) 처리 항목. 앱은 광고 SDK에 좌표를 넘기지 않습니다 | 광고 게재 |
PaletteWeather는 계정·로그인이 없고 이름, 이메일, 연락처, 사진, 마이크 정보를 수집하지 않습니다. iOS 앱은 업데이트 확인을 위해 Apple App Store에 앱 번들 ID만 조회합니다.
3-2. 운영자 서버에 저장되는 정보
- 서버는 받은 좌표(약 1km 격자)와 조회한 날씨·대기질 값을 조회 기록과 캐시에 저장합니다. 이 기록에는 이용자·기기 식별자가 없습니다.
- 도시 검색어는 검색 결과 수·언어와 함께 검색 기록에 저장되며, 역시 이용자·기기 식별자가 없습니다.
- 서버는 날씨 제공자에게 좌표와 검색어를 전달하지만 이용자의 IP 주소는 전달하지 않습니다.
3-3. 기기에만 저장되는 정보
저장한 도시 목록, 팔레트 기록, 위젯 표시 데이터, 예보 알림 일정, 최근 검색어, 마지막으로 사용한 위치 좌표(위젯·예보 알림용)는 기기에만 저장됩니다. 위젯과 예보 알림은 이 저장된 좌표로 날씨를 갱신하며, 알림은 기기에서 만드는 로컬 알림입니다.
3-4. 날씨 데이터 제공자
| 제공자 | 전달되는 정보 | 경로 |
|---|---|---|
| Open-Meteo (open-meteo.com) | 날씨·대기질·해양·홍수·앙상블 조회 좌표, 도시 검색어, IP 주소(앱이 직접 요청할 때) | 운영자 서버 경유 및 앱 직접 요청 |
| 노르웨이 기상청 MET Norway (api.met.no) | 날씨 조회 좌표 | 운영자 서버 경유 |
| OpenStreetMap Nominatim | 도시 검색어 | 운영자 서버 경유 |
3-5. 보유 기간과 삭제
- 서버의 날씨·대기질 조회 기록과 도시 검색 기록은 서버 정리 작업에서 90일이 지나면 삭제되고, 캐시는 만료되면 삭제됩니다.
- 서버 기록에는 이용자 식별 정보가 없어 특정 이용자의 기록만 골라 찾거나 삭제할 수 없습니다.
- 기기에 저장된 도시·기록·설정은 앱 안의 도시·기록 삭제와 설정 초기화 기능 또는 앱 삭제로 지울 수 있습니다.
- Firebase·광고 데이터의 보유 기간은 2-4절의 Firebase·광고 항목과 같습니다.
- 위치 사용은 기기 설정에서 언제든 끌 수 있으며, 끄더라도 도시를 검색해 추가하면 날씨를 볼 수 있습니다.
4. 제3자 제공과 국외 처리
운영자는 개인정보를 판매하지 않으며, 법령에 따른 경우를 제외하고 운영자가 보유한 정보를 제3자에게 제공하지 않습니다. 위에 적은 외부 서비스는 각 제공자의 정책에 따라 정보를 처리하며, 서버가 대한민국 밖(Google LLC·Unity Technologies는 미국 등, MET Norway는 노르웨이, Open-Meteo와 OpenStreetMap Nominatim은 해외)에 있을 수 있습니다.
- Google 개인정보처리방침 · Firebase 개인정보 및 보안 · Google 광고
- Unity 개인정보처리방침 · Open-Meteo 약관 · OpenStreetMap Foundation 개인정보처리방침
5. 안전성 확보 조치
- 앱과 운영자 서버 사이의 통신은 HTTPS로 암호화합니다.
- SnackPlay는 점수 위변조를 막기 위해 기록 검증값과 서명을 확인하고, 서버로 보내는 오류 기록의 인증 토큰·이메일·UUID 형식 값을 가립니다.
6. 아동의 개인정보
두 앱은 만 14세 미만 아동을 주 이용 대상으로 하지 않으며 연령 확인 절차는 없습니다. 만 14세 미만 아동의 SnackPlay 계정이 법정대리인 동의 없이 만들어진 사실을 알려 주시면 해당 계정을 삭제합니다.
7. 방침 변경과 문의
이번 개정(2026년 9월 14일)은 두 앱이 실제로 처리하는 정보에 맞게 설명을 바로잡은 것입니다. 앞으로 처리 항목이 바뀌면 시행 전에 이 페이지에 알립니다.
- 개인정보 보호책임자: 개인 개발자 Glenn Yu
- 문의 이메일: gwangy.claw@gmail.com