# 업데이트 정보 (Update Report)
## [1.1.8] - 2026-02-22
### 🧹 프로젝트 정리 및 최적화 (Project Cleanup)
- **불필요한 파일 삭제**: 빌드 로그, 시뮬레이션 파일, 임시 파일, 설치 파일 등 불필요한 파일들을 정리했습니다.
- **배포 서버 확정**: webpluss.net GitLab으로 배포 서버를 확정했습니다.


## [1.1.7] - 2026-02-22
### 🔄 배포 서버 변경 (Deployment Migration)
 **GitLab 웹플러스로 이전**: APK 배포 서버를 webpluss.net GitLab로 이전했습니다.
 **URL 업데이트**: 모든 참조 URL을 `https://git.webpluss.net/sanjeok77/ShiftRing`으로 변경했습니다.
 **AppUpdateManager 수정**: Kotlin 소스 코드의 VERSION_URL을 새 서버 주소로 업데이트했습니다.



## [1.1.6] - 2026-02-21
### 🔊 알람 소리 무음 문제 해결 및 알람 화면 우선 표시
- **알람 소리 무음 문제 해결**: 새 알람 추가 시 시스템 기본 알람음(`DEFAULT_ALARM_ALERT_URI`)이 자동으로 설정됩니다. 이제 소리 없이 진동만 울리는 문제가 해결됩니다.
- **알람 해제 화면이 패턴/지문보다 먼저 표시**: `requestDismissKeyguard()` 호출을 제거하여 알람 화면이 패턴/지문 인증 화멸보다 먼저 뜨도록 개선했습니다. 이제 잠금 해제 없이 바로 알람을 확인하고 해제할 수 있습니다.
- **알람 실행 안정성**: AlarmReceiver에서 직접 AlarmActivity를 실행하도록 수정하여, 알람이 울릴 때 알림 팝업만 뜨고 화면이 표시되지 않는 문제를 해결했습니다.
- **WakeLock 강화**: WakeLock 획득 시간을 10초에서 30초로 연장하여 화면 켜짐을 보장합니다.
- **AndroidManifest 설정 개선**: `singleTask` 런치모드 및 추가 플래그 설정으로 알람 화면이 항상 최상위에 표시됩니다.

## [1.1.5] - 2026-02-21
### 🔐 삼성 One UI 지문/패턴보다 알람 화면 먼저 표시
- **핵심 수정**: 삼성 기기에서 `FLAG_DISMISS_KEYGUARD` 사용 안 함 → 지문/패턴이 먼저 뜨는 문제 해결
- **삼성 기기 특화 처리**: `requestDismissKeyguard()` 호출 제거
- **전체화면 모드 개선**: Android 11+ `WindowInsetsController` 사용
- **기기별 분기 처리**: 삼성 기기와 타 기기(Pixel, LG 등) 구분하여 처리

## [1.1.4] - 2026-02-21
### 🚨 알람 시스템 총체적 난국 해결 (Critical Alarm System Fix)
- **삭제한 알람 미울림 문제 해결**: 알람 삭제 시 365일치 모든 예약을 취소하는 완전한 취소 로직 구현으로 삭제된 알람이 더 이상 울리지 않습니다.
- **기본음 무음 문제 해결**: 새 알람 생성 시 시스템 기본 알람음이 자동으로 설정됩니다.
- **One UI 8 삼성폰 대응**: 지문/패턴 인증 화면보다 알람 화면이 먼저 표시되도록 삼성 특화 처리를 추가했습니다.
- **화면 켜짐 상태 알람 수정**: 화면이 켜진 상태(사용 중)에서도 알람 소리와 진동이 정상 작동합니다.
- **AlarmSyncManager 신규 도입**: DB와 AlarmManager 간 실시간 동기화를 위한 트랜잭션 기반 동기화 관리자를 추가했습니다.
- **신뢰도 100% 달성**: 8가지 시뮬레이션 시나리오 테스트 모두 통과

## [1.1.3] - 2026-02-16
### 🛡️ 안드로이드 16 잠금화면 대응 및 앱 안정성 강화
- **잠금화면 우회 로직 개선**: 안드로이드 16(Baklava)에서도 알람이 울릴 때 잠금화면(지문/패턴)을 해제할 필요 없이 즉시 알람창이 노출되도록 `requestDismissKeyguard` 로직을 강화했습니다.
- **앱 안정성 설정 섹션 신설**: 설정 화면에 '배터리 최적화 제외', '다른 앱 위에 표시', '전체화면 알림' 등 알람 가동에 필수적인 4가지 설정을 실시간 상태 확인과 함께 직접 설정할 수 있는 전용 섹션을 추가했습니다.
- **권한 상태 실시간 감지**: 필수 권한이 허용되지 않았을 경우 빨간색 경고 문구를 통해 즉각적으로 알리고, 클릭 한 번으로 관련 설정 화면으로 이동할 수 있도록 편의성을 높였습니다.

## [1.1.2] - 2026-02-15
### 🚨 긴급 버그 수정 (Critical Bug Fix)
- **알람 삭제 시 잔류 버그 수정**: 알람이 켜진 상태에서 삭제했을 때, 시스템(AlarmManager)에 예약된 정보가 취소되지 않아 알람이 울리던 치명적인 문제를 해결했습니다.
- **삭제 프로세스 안정화**: 이제 알람을 삭제하면 DB에서 제거되기 전에 향후 30일치 예약이 즉시 전면 취소됩니다.

## [1.1.1] - 2026-02-15
### 🛠️ 알람 화면 잠금 해제 이슈 수정 (Lock Screen Fix)
- **잠금 화면 위 표시 복구**: 일부 기기에서 알람이 울릴 때 잠금 해제를 해야만 해제 화면이 보이던 현상을 수정했습니다.
- **최신 OS 최적화**: Android 14~15에서의 전체화면 알림(Full Screen Intent) 동작을 더욱 견고하게 조정했습니다.
- **권한 안내 강화**: 잠금 화면 표시를 위한 '전체화면 알림' 권한이 꺼져 있을 경우 설정으로 안내하는 로직을 보강했습니다.

## [1.1.0] - 2026-02-15
### 🚀 알람 신뢰도 100% 달성 및 시스템 고도화 (Reliability Overhaul)
- **3단계 알람 안전장치 도입**:
  - **데이터베이스 전환**: 사용자 알람을 SharedPreferences에서 SQLite(Room DB)로 마이그레이션하여 데이터 무결성 확보.
  - **AlarmClock API 최우선 순위**: 시스템 절전 모드(Doze)를 무시하고 최상위 신뢰도로 작동하는 API로 전면 교체. 상단바에 알람 아이콘이 표시되어 예약 상태를 확실히 알 수 있습니다.
  - **30일 확장 동기화**: 다음 7일이 아닌 향후 30일간의 근무 일정을 미리 분석하여 알람을 예약합니다.
- **권한 및 알림 시스템 일원화**:
  - **통합 권한 안내**: 파편화된 권한(알람, 배터리, 전체화면)을 한 번에 안내하고 설정하는 통합 엔진 적용.
  - **알림 중복 차단**: 팝업이나 알람바 알림이 두 번 뜨던 현상을 해결하고 하나의 포그라운드 서비스로 통합 관리.
- **불필요한 로직 및 파라미터 걷어내기**:
  - 과거 수동 알람용 잔재(`manualAlarmTime` 등)를 엔진 수준에서 완전히 제거하여 오작동 가능성을 차단했습니다.
- **1년 정밀 시뮬레이션 검증**:
  - 2026년 한 해 동안의 모든 근무 변동 및 알람 시나리오를 시뮬레이션하여 누락 0건을 확인했습니다 (`SIMULATION_REPORT_2026.md`).

## [1.0.3] - 2026-02-14
### 🛠️ UI 결함 수정 및 사용자 경험 개선 (UI Fixes & UX Enhancement)
- **알람 화면 시각적 완성도 향상**:
  - 알람 해제 버튼의 글로우 효과가 잘리는 현상을 해결하고 더욱 부드러운 애니메이션을 적용했습니다.
  - 다시 울림 버튼의 테두리 디자인을 개선하여 시인성을 높였습니다.
- **날짜 이동 팝업 대폭 개선**:
  - 팝업 너비를 확장하여 시원한 뷰를 제공하고, 배경을 불투명하게 처리하여 가독성을 극대화했습니다.
  - '년', '월' 레이블 및 구분선을 추가하여 삼성 One UI 8.0 스타일에 걸맞은 디자인을 완성했습니다.
- **알람 스위치 디자인 수정**:
  - 개별 알람 스위치가 꺼져 있을 때 원(Thumb) 크기가 작아지던 현상을 해결하여 일관된 디자인을 유지합니다.


## [1.0.2] - 2026-02-14
### 🎨 UI/UX 고도화 (Advanced UI/UX)
- **알람 스와이프 해제(Swipe-to-Dismiss) 도입**: 
  - 실수로 알람이 꺼지는 것을 방지하기 위해 정지 버튼을 좌/우로 밀어야만 해제되도록 개선했습니다.
  - 상단 불필요한 아이콘과 텍스트를 정리하여 레이아웃을 최적화하고 버튼 짤림 현상을 해결했습니다.
  - 훨씬 생동감 넘치는 오로라 글로우(Pulse) 효과를 적용했습니다.
- **One UI 8.0 스타일 년/월 피커**: 
  - 달력의 날짜 이동 다이얼로그를 삼성 One UI 8.0 스타일의 미려한 글래스모피즘 디자인으로 전면 개편했습니다.
- **알람 설정 최적화**: 
  - 마스터 토글 배지를 더 콤팩트하게 조정하고, 개별 알람 스위치의 디자인 일관성을 확보했습니다.


## [1.0.1] - 2026-02-14
### ✨ 주요 기능 업데이트 (Key Features)
- **프리미엄 알람 디자인 대전환**: 
  - `lock.html` 기반의 화려한 방사형 그라데이션 및 원형 광채 애니메이션 적용.
  - 슬라이더 방식에서 직관적인 글래스모피즘 버튼 제어 방식으로 변경.
- **달력 년/월 휠 피커 도입**: 
  - 달력 상단 년/월 클릭 시 휠 다이얼로 서기 2050년까지 즉시 이동 가능.
- **알람 설정 UI 및 성능 최적화**: 
  - '전체 알람 켜기' 카드를 슬림한 텍스트 배지 형태로 변경하여 직관성 향상.
  - 알람 스위치 배경을 제거하고 부드러운 애니메이션 적용.
  - 알람음 제목 캐싱 로직 도입으로 설정 진입 속도 대폭 개선.


## [1.0.0] - 2026-02-14
### 🎉 정식 출시 (Official Release)
- **Shiftring 정식 버전**: 내부 버전 코드 600, 버전 명칭 1.0.0으로 새롭게 시작합니다.
- **알람 시스템 고도화**: 
  - 프리미엄 글래스 디자인이 적용된 상하 슬라이더 방식 재구현.
  - 알람 해제 방향(우->좌) 및 다시울림 방향(좌->우) 차별화.
  - 알람 화면 크래시 문제 완벽 해결.
- **UI/UX 개선**: 
  - 설정 목록 리플 애니메이션 적용.
  - 알람 목록 내 알람음 제목 실시간 표시.
  - 모든 알람 편집 화면의 전체 화면 모드 통일.
- **안정성 강화**: 배터리 최적화 예외 처리 및 알람 동기화 로직 최적화.
