← Pixel Distillery 홈

초안 — 법률 검토 전입니다. 공개 전에 내용이 바뀔 수 있습니다.

개인정보 처리방침

믹스 마스터(이하 "이 앱")는 PIXEL DISTILLERY가 만든 조주기능사 필기·실기 학습 앱이다. 이 문서에서는 이 앱이 어떤 정보를 어디에 얼마나 보관하는지와 삭제 방법을 안내한다.

1. 이 앱이 저장하는 것

이 앱은 별도의 계정 생성 절차 없이 익명 계정으로 시작한다. 기본 학습 기능이 서버 데이터베이스(Supabase Postgres)에 담는 값은 다음과 같다. 커뮤니티를 여는 배포에서 추가로 처리하는 정보는 §1-2에 적었다.

항목내용
익명 계정 식별자서버가 발급한 uid
닉네임사용자가 정한 표시 이름 (순위표에 쓰인다)
학습 진도유닛별 숙련도
세션 기록점수, 정확도, 소요 시간
주간 XP주간 순위 집계값
역대 누적 기록역대 순위 집계값 — 전체 기간 XP 합계, 제조 시뮬 시험 최고 점수와 시도 횟수
제조 시뮬 기록모드, 점수, 완료 시각

이메일·실명·전화번호·주소·결제정보를 기본 학습 테이블에 별도 입력받아 저장하지 않는다. 이는 "수집하지 않는다"는 뜻이 아니다. 계정 연결과 광고·구매 서비스에서 처리하는 정보는 §2와 §4에 적었다. 커뮤니티 글과 사진에는 이용자가 직접 입력하거나 선택한 정보가 포함될 수 있다(§1-2).

1-1. 순위표 공개 범위

기본 학습 기능에서 다른 이용자에게 보이는 것은 순위표(리더보드)에 실리는 값뿐이다.

순위표다른 이용자에게 보이는 항목
XP (주간 · 역대)닉네임, XP 합계, 순위
제조 시뮬 (주간 · 역대)닉네임, 시험 모드 최고 점수, 시도 횟수, 순위

1-2. 커뮤니티를 여는 배포

Apple 또는 Google 계정을 연결하고 운영 규칙에 동의한 이용자는 글·댓글·사진을 게시할 수 있다. 글 종류는 오늘의 한 잔, 질문, 나만의 레시피다. 레시피 글은 재료명·수량·단위를 함께 저장한다. 게시글에는 사진을 한 장까지 붙일 수 있다. 글·댓글, 표시 이름, 선택한 사진은 다른 이용자에게 보인다. 원본 계정 식별자와 이메일은 게시글에 표시하지 않는다. 신고 내용, 검수 결과, 작성 제한과 이의신청 내용은 공개하지 않는다.

게시한 글·댓글은 먼저 공개되고 자동 검수를 받는다. 검수가 지연되면 게시 후 5분부터 공개 조회에서 빠지며, 위반 또는 판정 불확실성이 확인되면 숨겨질 수 있다. 사진 파일은 비공개 저장소에 보관하고, 공개 가능한 게시글에 한해 짧게 유효한 사진 보기 주소를 발급한다. 글이나 계정을 삭제하면 사진 삭제 작업을 예약한다. 이미 발급된 업로드 주소가 만료된 뒤 정리하도록 사진 파일 삭제를 최소 2시간 10분 늦춘다. 정리 작업이 늦어지면 실제 삭제 시점도 더 늦어질 수 있다.

글·댓글·사진은 자동 검수를 위해 OpenAI API로 전송된다. API 요청에서 응답 저장을 끄더라도 제공자의 오남용 감시 목적 보관까지 없어지는 것은 아니다. 서비스 공개 전 사진·신고·이의신청 기록의 확정 보관 기간, 외부 처리 범위, 처리 위탁 및 국외 이전 항목을 이 문서에 채우고 법률 검토를 받는다. [사용자 기입: 커뮤니티 데이터별 확정 보관 기간과 OpenAI 처리 위탁·국외 이전 고지]

2. 계정을 연결하면 추가로 저장되는 것

Apple 또는 Google로 계정을 연결하면, 제공자가 돌려주는 이메일 주소가 서버의 인증 저장소에 저장된다. Apple의 "이메일 가리기"를 고른 사용자는 비공개 릴레이 주소(…@privaterelay.appleid.com)가 같은 자리에 저장된다.

같은 저장소에 다음도 함께 남는다.

앱 코드가 이 정보를 읽거나 쓰지 않더라도, 이 앱이 보관하는 개인정보이므로 여기에 적는다. 계정을 연결하지 않으면 이 절의 어떤 값도 생기지 않는다.

3. 저장 위치

기기의 입장 하트 잔액·충전 시각·고정 시간대와 광고 표시/보상 중복 방지 내역도 기기에 보관한다. 계정 삭제 후에도 이 단말의 재화와 광고 한도를 유지하기 위해 이 내역은 남는다. 학습 런의 진행 상태와 결과는 계정 삭제 시 지운다.

4. 제3자 제공·추적·분석

오류 수집: Sentry

오류 수집: Sentry(Functional Software, Inc.). 오류 수집 키(DSN)를 넣어 만든 배포 빌드에서, 이용자가 끄지 않았을 때만 켜진다. 목적은 앱 안정성(오류 원인 파악) 하나이고, 광고·추적 목적은 없다.

선택형 보상광고: Google AdMob

수익화 기능을 켠 네이티브 배포에서 이용자가 보상광고를 선택하면 사용한다. 광고 요청과 보상 처리를 위해 광고 시도 식별자와 현재 앱 이용자 식별자가 전달될 수 있다. 앱은 닉네임·이메일·문항 답안을 광고 요청에 넣지 않는다.

광고 SDK는 IP 주소, 기기·계정 식별자, 광고 관련 동작과 진단 정보를 처리할 수 있다. IP로 대략적인 위치를 추정할 수 있으며 Android 광고 식별자 등 실제 항목은 OS·동의·SDK 설정에 따라 달라진다. 이 앱의 비개인화 광고 요청만으로 이러한 처리가 전부 꺼지는 것은 아니다.

일회성 구매 확인: RevenueCat·앱 스토어

수익화 기능을 켠 네이티브 배포에서 영구 무제한 이용권의 가격·구매·복원·권한을 확인한다. RevenueCat은 앱 이용자 식별자와 구매 이력·상품·거래 및 권한 정보를 처리하며, 스토어와 구매 상태를 확인한다. 앱은 닉네임·이메일을 별도의 구매 고객 속성으로 보내지 않는다. 이 앱은 카드 번호나 결제 비밀번호를 입력받지 않으며, 결제는 스토어가 처리한다.

스토어가 확인한 영구권의 정보는 오프라인에서도 권한을 확인하도록 SDK의 기기 캐시에 남을 수 있다. 기간제 구독이나 자동 갱신 상품은 제공하지 않는다. 앱은 임의의 설정값으로 유료 권한을 만들지 않는다.

5. 보관 기간

서버의 앱 학습 데이터는 계정이 유지되는 동안 보관한다. 삭제를 요청하면 즉시 지운다. 기기 하트·광고 내역과 외부 광고·구매 서비스의 정보는 §3·§4·§6의 별도 범위에 따른다. 그 밖에 서버가 스스로 정리하는 두 가지가 있다. 두 기간은 주 1회 배치로 집행된다.

주간 순위 기록은 8주

주간 XP와 제조 시뮬 주간 최고점(§1)은 8주가 지나면 지워진다. 역대 순위 집계값(전체 기간 XP 합계, 제조 시뮬 시험 최고 점수와 시도 횟수)은 이 정리 대상이 아니다 — 계정이 살아 있는 동안 보관하고, 계정을 삭제하면 함께 지운다.

연결되지 않은 익명 계정은 180일

Apple/Google을 연결하지 않은 익명 계정이 180일 동안 쓰이지 않으면 계정과 연결된 앱 데이터 전부가 지워진다.

계정 연결은 기간과 무관하다. Apple/Google 계정 연결 기록이 남아 있으면 얼마나 오래 쓰지 않았든 이 이유로는 지워지지 않는다. 180일 사용 여부를 확인하는 대상이 아니다.

연결하지 않은 계정에 대해 "쓰이지 않았다"는 아래 네 가지가 180일 안에 하나도 없는 상태를 말한다. 하나라도 있으면 남는다.

  1. 마지막 로그인
  2. 앱 실행에 따른 로그인 상태 갱신 — 앱을 열기만 해도 사용한 것으로 본다. 문제를 풀거나 기록을 남기지 않아도, 앱이 켜지면서 로그인 상태를 갱신하는 것만으로 이 신호가 최신이 된다. 학습 기록을 서버에 남기지 않는 기능(오답노트 복습, 필기·실기 모의고사, 제조 시뮬의 시험 외 모드)만 매일 쓰는 경우에도 계정이 지워지지 않는 이유가 이것이다.
  3. 학습 세션 기록
  4. 제조 시뮬 기록

익명 계정의 학습 진도는 기기에도 남아 있으므로(§3), 서버 데이터가 삭제돼도 그 기기의 기록은 그대로다. 사라지는 것은 다른 기기로 옮길 수 있었던 백업이다.

6. 삭제 요청 경로와 삭제 범위

앱 안에서 프로필 → 계정 삭제(2단계 확인)로 요청한다.

앱을 지웠거나 열 수 없다면 계정 삭제 요청 안내의 방법으로 요청할 수 있다.

삭제가 지우는 것:

남는 것: 이 기기의 하트 잔액·충전 기준·고정 시간대와 광고 표시/보상 중복 방지 내역. 계정 삭제로 새로운 하트나 광고 한도를 지급하지 않는다. 광고 내역은 단말의 시도 식별자와 날짜·상태를 저장하며 학습 답안은 담지 않는다. 이 기기의 내역을 지우려면 앱 데이터를 지우거나 앱을 삭제한다.

외부 광고·구매 서비스와 스토어의 거래 기록은 이 앱 계정 삭제만으로 자동 삭제되거나 환불되지 않는다. 별도 삭제 문의는 지원 메일로 요청한다(§4).

남는 표시·알림 설정에는 학습 리마인더 설정(§8)이 포함된다. 켬/끔과 시각은 기기에만 있으며, 동기화되지 않는다. 지우려면 앱에서 리마인더를 끄거나 앱을 삭제한다.

7. 오류 로그

기기의 SQLite에 최근 50건까지 순환 기록으로 남는다. 한 줄은 시각·종류 (render/sync/db/auth)·화면 경로·드라이버의 원문 메시지다.

신고 본문에 함께 담기는 것. 신고를 어디서 열었는지에 따라 본문 위쪽에 신고 대상 한 줄이 붙는다. 학습 화면에서 열면 문항 id·유닛·종류와 지문 일부이고, 리더보드에서 행을 길게 눌러 열면 신고 대상의 닉네임·기간(주차 또는 역대)·순위다. 리더보드의 닉네임은 이미 리더보드가 모든 이용자에게 공개하는 값이며, 신고에서 그것을 빼면 무엇을 신고하는지 전할 수 없다. 어느 경우에도 신고하는 사람의 uid·이메일·토큰·점수·진도는 담기지 않는다. 이 본문 역시 사용자가 눈으로 읽고 직접 복사하거나 메일 초안을 열 때만, §11의 지원 메일 주소로 전송된다. 앱이 자동으로 보내지 않는다.

8. 학습 리마인더

사용자가 켠 경우에만, 고른 시각에 기기가 스스로 알림을 띄운다.

9. 기기 권한과 센서

아래 표에는 기본 빌드의 권한과 수익화 기능을 켠 배포에서 광고 SDK가 추가할 수 있는 항목을 적었다. 실제 권한은 설치된 빌드의 OS 권한 설정과 SDK 구성에 따른다.

권한 / 키플랫폼앱이 쓰는 곳저장·전송
NSMotionUsageDescriptioniOS제조 시뮬레이션의 셰이크 기법 판정. 기기가 흔들렸는지만 그 순간에 본다없음. 동작 데이터를 저장하지도 전송하지도 않는다
NSFaceIDUsageDescriptioniOS세션 토큰 보관함(Keychain)을 여는 데 OS가 쓴다없음. 생체 정보는 OS 안에서 처리되고 앱은 그 값을 받지 않는다
NSPhotoLibraryUsageDescriptioniOS커뮤니티 글에 붙일 사진 한 장을 이용자가 선택한다선택한 사진을 JPG로 바꿔 비공개 저장소에 업로드한다(§1-2)
android.permission.POST_NOTIFICATIONSAndroid학습 리마인더 표시(§8)없음
android.permission.RECEIVE_BOOT_COMPLETEDAndroid재부팅 후 리마인더 예약 복원없음
android.permission.VIBRATEAndroid즉시 판정 햅틱없음
android.permission.INTERNETAndroid서버 동기화·활성 배포의 광고/구매 확인§1·§2·§4
android.permission.ACCESS_NETWORK_STATE · android.permission.WAKE_LOCKAndroid광고 라이브러리의 네트워크 상태·화면 동작 지원광고/구매 SDK 처리 범위는 §4
com.google.android.gms.permission.AD_IDAndroid광고 SDK 의존성이 병합할 수 있는 광고 식별자 권한실제 빌드에서의 수집/사용 범위는 OS·동의·SDK 설정에 따라 달라진다(§4)
android.permission.MODIFY_AUDIO_SETTINGSAndroid효과음 재생 전 오디오 모드 설정없음
android.permission.READ_EXTERNAL_STORAGE · WRITE_EXTERNAL_STORAGEAndroid앱 코드가 쓰지 않는다 — 라이브러리가 넣는다없음
android.permission.SYSTEM_ALERT_WINDOWAndroid앱 코드가 쓰지 않는다 — 빌드 도구의 매니페스트 기본값없음

마이크 권한은 없다. 소리는 재생 전용이고 녹음 기능을 쓰지 않아, NSMicrophoneUsageDescription과 android.permission.RECORD_AUDIO를 빌드 설정에서 껐다. 카메라·위치·연락처 권한은 없다. 사진은 이용자가 게시할 때 선택한 것만 처리한다.

일부 권한은 앱이 직접 요구한 것이 아니라 사용하는 라이브러리나 빌드 도구가 매니페스트에 병합하는 것이다. 권한 목록에는 나타나므로 여기에 적되, 무엇에 쓰이는지도 함께 적는다.

10. 아동

이 앱은 연령을 수집하지 않는다. 조주기능사는 주류를 다루는 국가기술자격이다. [사용자 기입: 아동 대상 앱 여부와 그 근거(주 이용자층, 콘텐츠 성격) — 스토어에 선언하는 대상 연령과 같게]

11. 문의

개인정보에 관한 문의와 삭제 요청은 지원 메일(support@pixeldistillery.com)로 보낸다. 앱 안에서는 프로필 → 문제 신고에서 보낼 내용을 만들 수 있다.

부록 — 오픈소스 고지

폰트 3종(Do Hyeon · Gothic A1 · Press Start 2P)의 SIL Open Font License 1.1 전문과 사용 패키지 목록은 앱 안에서 프로필 → 앱 정보 → 오픈소스 라이선스로 볼 수 있다.