alull 프로덕트의 개인정보처리방침 및 법적 고지
com.alull.oddaalull(이하 “운영자”)은 odda(이하 “본 앱”) 이용자의 개인정보를 중요하게 생각하며, 「개인정보 보호법」 등 관련 법령 및 Google Play 데이터 보안 요건을 준수합니다. 본 처리방침은 본 앱이 어떤 정보를 어떻게 처리하는지 안내합니다.
요약: odda는 운영자가 직접 개인정보를 수집하지 않습니다. 모든 게임 기록은 이용자 기기 안에만 저장됩니다. 다만 홈 화면 하단에 Google AdMob 배너 광고가 표시되며, AdMob은 광고 제공을 위해 광고 식별자 등 일부 기기 정보를 처리할 수 있습니다(비개인화 광고로 요청). 또한 앱 품질 개선을 위해 Google Firebase의 사용 통계(Analytics)와 오류 보고(Crashlytics)를 사용하며, 이때도 이름·이메일 같은 개인 식별정보는 전송하지 않습니다. 네트워크 대결은 같은 와이파이에서는 두 기기가 직접, 온라인에서는 운영자의 중계 서버를 거쳐 연결되며 게임 진행 데이터만 잠깐 통과할 뿐 저장하지 않습니다.
본 앱은 회원가입·로그인이 없으며, 개인을 식별할 수 있는 정보를 수집하지 않습니다.
| 구분 | 항목 | 저장 위치 | 외부 전송 |
|---|---|---|---|
| 게임 기록 | 스도쿠 점수·소요 시간·난이도·실수 수·연속 기록 등 플레이 통계 | 기기 내부(앱 전용 저장소, shared_preferences) |
전송 안 함 |
| 게임 설정 | 모드·난이도·실수 제한 등 환경설정 | 기기 내부 | 전송 안 함 |
| 광고 | 광고 식별자 등 광고 게재에 필요한 정보 | — | Google AdMob이 처리 (비개인화 요청) |
| 사용 통계 | 앱 인스턴스 ID(무작위), 화면 열람·세션 등 사용 이벤트, 대략적인 기기·국가 정보 | — | Google Firebase Analytics가 처리 |
| 오류 보고 | 비정상 종료 시의 오류 내용·스택 추적, 기기 모델·OS·앱 버전 | — | Google Firebase Crashlytics가 처리 (debug 빌드는 수집 안 함) |
| 전체 랭킹(선택) | 닉네임·점수·대결 레이팅·토너먼트 점수 + 기기 익명 ID | 운영자 서버(개인) | 전송함(랭킹 참여 시에만) |
운영자가 수집하지 않는 정보: 이름, 이메일, 계정, 전화번호, 위치(GPS), 연락처, 사진 등 개인 식별정보. 운영자는 어떠한 개인정보도 직접 수집·저장하지 않으며, 광고 식별자는 AdMob이, 사용 통계·오류 보고는 Firebase가 각각 처리합니다(아래 4항).
“네트워크 대결”은 두 가지 방식으로 동작하며, 어느 쪽이든 게임 진행에 필요한 데이터(같은 퍼즐 시드, 진행률, 완료/실패)만 주고받습니다. 개인정보는 포함되지 않습니다.
아래는 설치 파일(APK)이 선언하는 전체 권한 목록입니다. 앱이 직접 선언한 것과 광고 SDK가 자동으로 추가한 것을 구분해 표기했습니다.
앱이 직접 선언한 권한
| 권한 | 사용 목적 |
|---|---|
INTERNET / ACCESS_NETWORK_STATE / ACCESS_WIFI_STATE |
네트워크 대결 통신 및 광고 로드 |
CHANGE_WIFI_MULTICAST_STATE |
같은 와이파이 내 상대 기기 발견(UDP 멀티캐스트) |
Google AdMob SDK가 자동으로 추가하는 권한 (앱이 직접 요청하지 않음)
| 권한 | 사용 목적 |
|---|---|
com.google.android.gms.permission.AD_ID |
광고 게재를 위한 광고 식별자 접근 |
ACCESS_ADSERVICES_AD_ID / ACCESS_ADSERVICES_TOPICS / ACCESS_ADSERVICES_ATTRIBUTION |
Android 프라이버시 샌드박스 광고 API |
WAKE_LOCK |
광고 SDK의 백그라운드 처리 중 기기 절전 방지 |
FOREGROUND_SERVICE |
광고 SDK가 사용하는 백그라운드 작업 라이브러리(androidx.work) |
com.alull.odda.DYNAMIC_RECEIVER_NOT_EXPORTED_PERMISSION |
앱 내부 브로드캐스트 수신을 앱 자신으로 제한하는 서명 수준 권한(외부에 노출되지 않음) |
Firebase SDK가 자동으로 추가하는 권한 (2026-08-18 추가, 앱이 직접 요청하지 않음)
| 권한 | 사용 목적 |
|---|---|
com.google.android.finsky.permission.BIND_GET_INSTALL_REFERRER_SERVICE |
Firebase Analytics 가 앱 설치 경로(Install Referrer)를 확인하기 위해 Google Play 서비스와 통신 |
요청하지 않는 권한: 위치(GPS), 연락처, 사진·미디어, 카메라, 마이크, 통화, 저장소, 알림 — 어느 것도 요청하지 않습니다. 인앱 결제 권한(
BILLING)도 제거했습니다.
본 앱은 광고 게재를 위해 Google AdMob을 사용합니다. AdMob은 광고 제공 과정에서 광고 식별자 등 일부 정보를 처리할 수 있으며, 이는 Google의 개인정보처리방침을 따릅니다.
npa=1)로 요청하며, 콘텐츠 등급을 전체이용가(G)로 제한합니다.Firebase(Google) — 2026-08-18 추가
앱 품질 개선을 위해 Google Firebase의 두 기능을 사용합니다. 둘 다 Google의 개인정보처리방침을 따릅니다.
| 구성요소 | 처리하는 정보 | 목적 |
|---|---|---|
| Firebase Analytics | 앱 인스턴스 ID(무작위), 앱 사용 이벤트(화면 열람·세션 등), 대략적인 기기·국가 정보 | 어떤 기능이 실제로 쓰이는지 파악해 개선 우선순위 결정 |
| Firebase Crashlytics | 앱이 비정상 종료될 때의 오류 내용·스택 추적, 기기 모델·OS 버전, 앱 버전 | 크래시 원인 파악 및 수정 |
인앱 결제: 본 앱은 인앱 결제를 제공하지 않습니다. 결제 라이브러리와 결제 권한을 앱에서 완전히 제거했으므로 결제 관련 정보는 일절 처리하지 않습니다.
전체 랭킹(선택 기능): 이용자가 닉네임을 설정해 전체 랭킹에 참여하면, 운영자의 개인 서버에 닉네임·점수·대결 레이팅·토너먼트 점수와 기기 익명 ID(무작위 생성)가 저장됩니다. 실명·이메일·전화번호 등 개인 식별정보는 저장하지 않으며, 닉네임은 이용자가 직접 정합니다. 랭킹에 참여하지 않으면(닉네임 미설정) 아무 것도 전송·저장되지 않습니다. 서버는 운영자가 직접 운영하며 제3자에게 제공하지 않습니다. 삭제를 원하면 alulltro@gmail.com 으로 요청할 수 있습니다.
게임 기록·설정은 이용자 기기 안에만 저장되며, 앱 삭제 또는 기기 설정에서 앱 데이터 삭제 시 즉시 함께 삭제됩니다. 운영자는 해당 데이터에 접근할 수 없습니다.
본 앱은 만 14세 미만 아동을 특정 대상으로 하지 않으며, 아동의 개인정보를 별도로 수집하지 않습니다.
본 처리방침이 변경되는 경우 본 페이지 상단의 “최종 수정일”을 갱신합니다.
com.alull.oddaalull (“we”) values your privacy and complies with applicable data protection laws (including Korea’s Personal Information Protection Act) and Google Play’s Data Safety requirements. This Privacy Policy describes how odda (“the App”) handles data.
Summary: We do not collect any personal data ourselves. All game records are stored only on your device. However, a Google AdMob banner ad is shown at the bottom of the home screen; AdMob may process device information such as an advertising ID to serve ads (requested as non‑personalized). We also use Google Firebase Analytics (usage statistics) and Crashlytics (crash reporting) to improve app quality; neither receives personally identifying information such as your name or email. Network multiplayer connects two devices directly on the same Wi‑Fi, or through our relay server for online play, which only passes game data through without storing it.
The App has no sign-up or login and collects no personally identifiable information.
| Category | Items | Storage | Sent externally |
|---|---|---|---|
| Game records | Sudoku scores, times, difficulty, mistakes, streaks | On-device app storage (shared_preferences) |
No |
| Settings | Mode, difficulty, mistake-limit | On-device | No |
| Advertising | Advertising ID and info needed to serve ads | — | Processed by Google AdMob (non‑personalized) |
| Usage analytics | App instance ID (random), usage events such as screen views and sessions, coarse device and country info | — | Processed by Google Firebase Analytics |
| Crash reports | Error details and stack traces on abnormal termination, device model, OS and app version | — | Processed by Google Firebase Crashlytics (disabled in debug builds) |
| Global ranking (optional) | Nickname, scores, versus rating, tournament points + random anonymous device ID | Our private server | Sent (only if you join the ranking) |
Not collected by us: name, email, account, phone, location (GPS), contacts, photos — no personally identifiable data. We collect and store no personal data ourselves; the advertising ID is processed by AdMob, and usage analytics and crash reports by Firebase (see §4).
“Network match” works in two ways. Either way, only data needed for play (shared puzzle seed, progress, finish/fail) is exchanged — no personal data.
Below is the complete list of permissions declared by the installed package (APK), split between those the app declares itself and those added automatically by the ads SDK.
Declared by the app
| Permission | Purpose |
|---|---|
INTERNET / ACCESS_NETWORK_STATE / ACCESS_WIFI_STATE |
Network matches and loading ads |
CHANGE_WIFI_MULTICAST_STATE |
Discover the peer device on the same Wi‑Fi (UDP multicast) |
Added automatically by the Google AdMob SDK (not requested by the app itself)
| Permission | Purpose |
|---|---|
com.google.android.gms.permission.AD_ID |
Access the advertising ID to serve ads |
ACCESS_ADSERVICES_AD_ID / ACCESS_ADSERVICES_TOPICS / ACCESS_ADSERVICES_ATTRIBUTION |
Android Privacy Sandbox advertising APIs |
WAKE_LOCK |
Keep the device awake during the ads SDK’s background processing |
FOREGROUND_SERVICE |
Background work library (androidx.work) used by the ads SDK |
com.alull.odda.DYNAMIC_RECEIVER_NOT_EXPORTED_PERMISSION |
Signature-level permission restricting internal broadcasts to the app itself (not exposed externally) |
Added automatically by the Firebase SDK (added 2026-08-18, not requested by the app itself)
| Permission | Purpose |
|---|---|
com.google.android.finsky.permission.BIND_GET_INSTALL_REFERRER_SERVICE |
Lets Firebase Analytics talk to Google Play services to determine the app’s install referrer |
Never requested: location (GPS), contacts, photos/media, camera, microphone, phone, storage, notifications. The in-app billing permission (
BILLING) has also been removed.
The App uses Google AdMob to display ads. AdMob may process information such as an advertising ID to serve ads, subject to Google’s privacy policy.
npa=1) and cap ad content rating to General (G).Firebase (Google) — added 2026-08-18
We use two Firebase features to improve app quality. Both are subject to Google’s privacy policy.
| Component | Information processed | Purpose |
|---|---|---|
| Firebase Analytics | App instance ID (random), app usage events (screen views, sessions), coarse device and country information | Understand which features are actually used, to prioritise improvements |
| Firebase Crashlytics | Error details and stack traces when the app crashes, device model, OS version, app version | Diagnose and fix crashes |
In-app purchases: The App offers no in-app purchases. The billing library and billing permission have been removed entirely, so we process no payment-related information.
Global ranking (optional): If you set a nickname and join the global ranking, your nickname, scores, versus rating, tournament points, and a random anonymous device ID are stored on our private server. No real name, email, or phone number is stored; the nickname is chosen by you. If you don’t join (no nickname), nothing is sent or stored. The server is operated by us and not shared with third parties. To delete your data, email alulltro@gmail.com.
Records and settings live only on your device and are deleted immediately when you uninstall the App or clear its data in system settings. We cannot access this data.
The App is not specifically directed to children under 14 and collects no personal data from anyone.
We will update the “Last updated” date at the top of this page when this policy changes.