워치에서 즐기는 두뇌 자극 2048 퍼즐 게임
com.watch_go.watch2048Wear OS 워치에서 즐기는 2048 퍼즐 게임입니다. 클래식 숫자 합치기 퍼즐을 원형/사각형 작은 화면에 맞게 최적화했으며, 주간/월간 글로벌 랭킹 서버와 연결되어 전 세계 플레이어와 경쟁할 수 있습니다. 모바일 앱은 랭킹 확인, 이름 등록, 설정 관리 용도로 사용됩니다.
Ranking2048Table)POST /ranking (v1) — 쿼리 파라미터 c에 CRC 체크섬POST /ranking/v2, POST /ranking/name — X-Api-Key 헤더DELETE /ranking — X-Admin-Secret-Key (관리자)| 엔드포인트 | 용도 | 인증 |
|---|---|---|
POST /ranking (v1) |
점수 등록 (레거시) | CRC 쿼리 |
POST /ranking/v2 |
점수 등록 (play_time, user_id, account_type 포함) | X-Api-Key |
GET /ranking/name/check |
이름 중복 확인 (소유자 체크 포함) | 없음 |
POST /ranking/name |
이름 등록/변경 (글로벌 유니크) | X-Api-Key |
GET /ranking/week |
주간 랭킹 (top N, 상세 포함 옵션) | 없음 |
GET /ranking/month |
월간 랭킹 | 없음 |
GET /ranking/month/stat |
월별 일간 통계 | 없음 |
DELETE /ranking |
관리자 기록 삭제 | X-Admin-Secret-Key |
def get_crc(point):
res = point % 10 + point % 100 + point % 1000
res += 31
return res * res
Ranking2048Table)period (ISO 주차, 예: 2025-W05)sortKey (역순 점수 + 타임스탬프, 예: 999997952#2025-02-03T12:34:56)UniqueCheckIndex (period + uniqueKey, 중복 체크)name#code#point)GET 응답의 user_id는 앞 3글자만 노출되고 나머지는 * 마스킹. account_type은 GET 응답에 포함되지 않음.
SharedPreferences 저장, 1분 주기 UI 갱신 (게임 성능 방해 방지)period로 쿼리, sortKey로 자동 정렬 (점수 내림차순, 시간 오름차순)timestamp 기준 월 1일~말일 필터 → 점수 내림차순 정렬