Skip to content
프로젝트

Tosencen/XMSLEEP has 1,421 GitHub stars and 79 forks. GitHot measured 0 stars in 24 hours. Last checked 2026-11-07 06:23 UTC. Last push 2026-10-13.

이 수치를 측정하는 방법

一款白噪音应用送给你,祝您牛掰,有的是钱

측정된 스타 증가

in 24h
0
in 7 days
기록 수집 중
in 15 days
기록 수집 중
in 1 month
기록 수집 중

서로 겹치는 기간의 순증가량이며 일별 합계가 아닙니다. 측정값이 없으면 비워 둡니다. 스타는 관심도를 나타내며 품질을 보장하지 않습니다.

README_KO.md

Original

📱 XMSLEEP

백색 소음 및 자연 소리 재생을 위한 Android 앱으로, 휴식과 집중, 수면을 도와줍니다.

License Kotlin Android Web

다운로드 • 기능 • 사용법 • 웹 버전

Language: 中文 | 繁體中文 | English | 한국어 | Русский | 日本語

Featured|HelloGitHub

📱 스크린샷

스크린샷1 스크린샷2 스크린샷3
스크린샷4 스크린샷5 스크린샷6

🌐 웹 버전

설치 없이 브라우저에서 모든 기능을 바로 체험하세요: 113가지 자연 소리 · 자유로운 믹싱 · 끊김 없는 루프 · 6개 언어 · 카운트다운 타이머, 사운드 목록은 모바일 앱과 동기화됩니다.

👉 온라인 재생: tosencen.github.io/XMSLEEP/player.html

앱 내 설정 → 기타 → 웹 버전에서도 원터치로 접근하고 링크를 복사해 공유할 수 있습니다.


📱 소개

XMSLEEP은 백색 소음 및 자연 소리 재생에 특화된 Android 앱으로, 다양한 자연 소리를 제공하여 휴식, 집중, 수면을 도와줍니다. Material Design 3 디자인 가이드라인을 적용하여 깔끔하고 아름다운 인터페이스를 제공합니다.

✨ 기능

🎵 오디오 기능

  • 다양한 백색 소음: 빗소리, 모닥불, 천둥, 고양이 가르릉, 새소리, 밤곤충 등 다양한 자연 소리 제공
  • 온라인 오디오: GitHub에서 더 많은 오디오 리소스를 동적으로 로드
  • 로컬 오디오: 휴대폰의 오디오 파일 재생 지원
  • 끊김 없는 루프: 오디오 끊김 없이 반복 재생 지원
  • 볼륨 제어: 각 사운드별 개별 볼륨 조절 또는 한 번에 모든 사운드 조절
  • 볼륨 저장: 볼륨 설정이 앱 재시작 후에도 자동으로 유지됨
  • 블루투스 헤드셋 지원: 블루투스 헤드셋 연결 해제 시 자동 재생 중지
  • Bilibili 라이브 라디오: Bilibili 라이브 방송국 검색 및 재생, 즐겨찾는 방송국 고정 가능
  • 명상 수면: 내장 명상 오디오를 다운로드해 오프라인 재생 가능

🎨 인터페이스 및 경험

  • 아름다운 애니메이션: 내장 사운드에 WebP 애니메이션 제공
  • Material Design 3: 최신 Material Design 3 디자인 가이드라인 적용
  • 테마 전환: 라이트/다크 모드 전환, 시스템 테마 자동 적용
  • 커스텀 테마: 다양한 색상 테마 및 동적 색상 지원

⚙️ 실용 기능

  • 타이머 기능: 자동 재생 중지 시간 설정
  • 프리셋 영역: 3개의 프리셋, 각 프리셋마다 최대 10개의 즐겨찾는 사운드 저장
  • 즐겨찾기: 좋아하는 백색 소음 저장
  • 최근 재생: 앱 재시작 시 최근 재생 목록 표시
  • 전역 플로팅 버튼: 현재 재생 중인 사운드 표시, 빠른 일시정지 및 확장
  • 스마트 상호작용: 플로팅 버튼과 프리셋 창이 상호 배타적, 스크롤 시 자동 숨김
  • 자동 업데이트: GitHub Releases를 통한 업데이트 확인, 다운로드 상태 유지

🌐 웹 버전

  • 온라인 플레이어: 브라우저에서 바로 사용 — 113가지 자연 소리 자유 믹싱, 끊김 없는 루프, 개별 볼륨 조절
  • 다국어 지원: 중국어/영어/일본어/한국어/러시아어/번체 중국어 6개 언어
  • 카운트다운 타이머: 커스텀 카운트다운 및 자동 정지, 실시간 표시
  • 재생 중 패널: 재생 중인 사운드 한눈에 보기/정지/볼륨 조절
  • 로딩 최적화: 첫 화면 프리페치 + LRU 캐시로 재생 즉시 시작

🛠️ 기술 스택

  • Kotlin - 주요 개발 언어
  • Jetpack Compose - 최신 UI 프레임워크
  • Material Design 3 - UI 디자인 시스템
  • ExoPlayer/Media3 - 오디오 재생 엔진
  • OkHttp - 네트워크 요청 및 파일 다운로드
  • Gson - JSON 파싱
  • Kotlinx Serialization - JSON 직렬화
  • Coil - 이미지 로딩
  • WebP - 애니메이션 지원
  • MaterialKolor - 동적 테마 색상 생성
  • Accompanist - Pull-to-refresh 지원
  • Hilt - 의존성 주입 프레임워크
  • Lottie - 고품질 애니메이션 렌더링
  • Web Audio API - 웹 버전 끊김 없는 루프 재생 (샘플 정밀도)

📦 현재 버전

  • 버전: 2.3.5
  • Version Code: 50
  • 최소 지원: Android 8.0 (API 26)
  • 대상 버전: Android 15 (API 35)

🆕 최신 업데이트 (v2.3.5)

🎨 새 기능

  • 명상 오디오 오프라인 다운로드: 오디오 목록 우측 하단 배지로 원탭 다운로드(미다운로드/다운로드 중/완료 3상태), 성공/실패 모두 Toast 알림, 다운로드한 오디오는 오프라인 재생 가능
  • 전체 페이지 스크롤: 명상 플레이어를 고정 영역 스크롤에서 전체 페이지 스크롤로 전환, 제목 표시줄은 스크롤 시 접히고 하단 여백을 두어 마지막 카드가 잘리지 않도록 함

🐛 수정

  • 오프라인 재생 크래시: 로컬 캐시 오디오를 파일 소스로 재생하도록 수정, file://를 네트워크 소스에 넘겨 발생하던 크래시 해결
  • Bilibili 오디오 403: UA/Referer/Origin 헤더 추가로 오디오 스트림 가져오기·다운로드 거부 문제 해결
  • 업데이트 확인 안정화: gh-proxy 미러 폴백, 다운로드 바이트 무결성 검증 및 기존 파일 재사용

✨ 개선

  • 배지 부드러운 구분: 다운로드 완료는 연한 초록, 미다운로드는 회색으로 한눈에 구분
  • 데드 코드 정리: 미사용 import, 참조 없는 함수, 중복 문자열 키 일괄 제거

🆕 최신 업데이트 (v2.3.4)

🎨 새 기능

  • 프로스티드 글라스 다이얼로그: FrostedGlassSheet 컴포넌트 도입, 전역 다이얼로그·바텀시트 통일 개편(MD3 드래그 핸들 포함)
  • 호흡 프론트그라운드 서비스: 페이즈 상태머신을 포그라운드 서비스로 이동, 다국어 음성 안내, 목록 무한 페이지링, 종료 시 자동 정리
  • 테마 컬러 그리드: XMVISIO 스타일 3색 원형 그리드 + 중심 체크 애니메이션, 내장 배경은 자동으로 전용 테마 색상 적용
  • 2차 페이지 상단바: 스크롤 시 숨겨지고 되돌아오면 다시 표시, 제목·본문 겹침 방지
  • 타이머 다이얼: 사용자 지정 시간은 M3 원형 시간 선택기로 변경

✨ 개선

  • QWeather 키 검증: 저장 전 host/key 강제 검증, 실패 시 다이얼로그에 오류 표시
  • 업데이트 다운로드 소스 교체·저속 소스 전환; ProGuard 정밀 keep 규칙, 백업에서 민감 SP 제외, 다국어 문구 수정(번체 언어 코드 수정)

🐛 수정

  • 다이얼로그 등장/퇴장 애니메이션 경직, 바텀 다이얼로그 좌우 이중 프레임
  • 배경 설정 콜백 연결, 위치 권한 갱신, 진동 토글 의미론(P0)
  • 배경 없음/사용자 배경으로 돌아가도 동적 색상이 강제 활성화되지 않음
  • 인용구 이력 다이얼로그의 미연결 새로고침 버튼 숨김, 호흡 알림 아이콘을 채워진 스타일로 변경

🆕 최신 업데이트 (v2.3.3)

🎨 새 기능

  • 매일 한 마디 배경: 매일 한 마디 팝업 배경을 Bing 일일 월페이퍼로 랜덤 적용(메모리 전용 캐시·디스크 사용 안 함). 텍스트는 하단 정렬·어두운 그라데이션으로 가독성 확보. 공유/저장 포스터도 동일 이미지 사용
  • 민감어 필터: 매일 한 마디에서 자해·강한 부정 표현(자살·우울 등) 자동 차단. API는 재시도, 로컬은 건너뜀

✨ 개선

  • 매일 한 마디 팝업: 화면 2/3 높이로 고정, 내용이 길면 스크롤. 새로고침 배지를 우상단으로 이동 및 둥근 모서리 적용

🆕 최신 업데이트 (v2.3.2)

🎨 새 기능

  • 화풍 날씨 소스(BYOK): 날씨에 사용자 직접 입력 화풍 날씨 키(설정에서 Host + Key) 지원. 미설정 시 Open-Meteo 자동 폴백. 도시 단위 위치 + 다국어

✨ 개선

  • 날씨 카드: 도시와 날짜를 한 줄로 통합(예「上海市 8月25日 화요일」)하고 힐링 문구 위에 배치. 소스 배지 제거
  • 좌표 오프셋: WGS84 → GCJ02 변환으로 국내 위치 정확도 향상

🆕 최신 업데이트 (v2.3.1)

🎨 새 기능

  • 웹 버전 온라인 플레이어: GitHub Pages 웹 버전 추가 — 113가지 자연 소리, 자유 믹싱, 끊김 없는 루프, 6개 언어 UI, 사운드 목록 앱과 동기화, 설치 없이 바로 사용
  • 앱 웹 버전 진입점: 설정의 「기타」 모듈에 「웹 버전」 추가 — 원터치로 온라인 플레이어 열기, 링크 복사 공유 지원
  • 흑백 모드 테마: 모노크롬 테마 추가, 미니멀한 비주얼
  • 토마토 타이머 백그라운드 타이밍: 페이지를 떠나도 타이머 계속 진행, 스케일에 현재 단계 시간 표시
  • 토마토 설정 시트 카드화: 카드 스타일 시트 + 종료음 미리듣기 + 휴식 시간 조절 가능
  • 알림창 명상 컨트롤: 알림창/잠금 화면에서 명상 오디오 직접 제어
  • 수량 복수형 현지화: 영어/러시아어 등 다국어 수량 표시 현지화 (plurals)

✨ 개선

  • 권한 강화: 권한 선언 정리로 프라이버시 노출 축소
  • Firebase 통계 및 크래시 리포트: 익명 사용 통계와 크래시 수집, 개인 식별 정보 미수집
  • 의존성 업그레이드: okhttp 5.3.2, gson 2.11.0, androidx.media 1.8.0, core-splashscreen 1.2.0
  • 리소스 및 서명 정리

🐛 수정

  • 커스텀 카운트다운 표시 문제
  • 호흡 서비스 등록, 알림 현지화

🆕 최신 업데이트 (v2.3.0)

🎨 새 기능

  • 토마토 타이머 종료음: 무료 4종 벨소리 내장(차임/딩동/마림바/윈드차임). 집중 종료 시 자동 재생
  • 토마토 타이머 종료 진동: 집중 종료 시 자동 진동 알림, 설정에서 켜기/끄기 가능
  • 토마토 설정 시트: 토마토 페이지 오른쪽 위 톱니바퀴에서 종료음·완료 애니메이션·진동 설정, 시트 전체 펼침
  • 종료음/진동 ×3회: 종료음과 진동이 각각 3회 반복 후 자동 정지
  • 휴식 수동 시작: 집중 종료 후 자동으로 휴식에 들어가지 않고 「휴식 시작」 버튼으로 수동 시작
  • 명상 반복 횟수: 명상 상세 페이지의 카운트다운을 「반복 횟수」로 변경. 1/2/3회 반복 후 자동 정지, 무한 반복과 상호 배타
  • 날씨 모드 토마토 진입점: 날씨 모드 오른쪽 위에 토마토 타이머 바로가기 추가

✨ 개선

  • 토마토 설정 다국어: 중국어/영어/일본어/한국어/러시아어/번체 중국어 지원
  • 진동 구현 최적화: 시스템 Vibrator 직접 사용 및 VIBRATE 권한 추가로 신뢰성 향상
  • 버전 업그레이드: 2.2.9 → 2.3.0

🆕 최신 업데이트 (v2.2.6)

🎨 새 기능

  • Bilibili 라이브 라디오: Bilibili 라이브 방송 기능 추가. 카테고리별 검색 지원 (자습실, 백색 소음 등)
  • 방송국 고정: 자주 사용하는 방송국을 고정하여 빠르게 전환, 라이브 중이 아닌 방송국은 자동 회색 표시

✨ 개선

  • 편집 모드 최적화: 바텀 시트를 닫을 때 자동으로 핀 편집 모드 해제
  • 프리셋 대화상자 개선: 프리셋 이름 편집 후 대화상자를 닫을 때 편집 상태 자동 리셋

이전 버전

v2.2.3

  • 명언 위젯: 시간, 일일 명언, 새로고침 버튼을 표시하는 홈 화면 위젯 추가

v2.2.1

  • 호흡 운동: 호흡 가이드 기능 추가
  • 화면 켜짐 유지: 화면 켜짐 설정 최적화
  • 날씨 오디오 매핑: 날씨와 오디오 매핑 개선

🚀 다운로드

최신 버전은 GitHub Releases에서 다운로드할 수 있습니다.

📋 빌드 요구사항

  • Android Studio: Ladybug | 2024.2.1 이상
  • JDK: 17 이상
  • Android SDK: API 33 이상
  • Gradle: 8.0 이상

🔨 빌드 방법

  1. 저장소 클론

    git clone https://github.com/Tosencen/XMSLEEP.git
    cd XMSLEEP
    
  2. Gradle 설정

    • gradle.properties.example를 gradle.properties로 복사
    • (선택) GitHub Token 설정하여 API 제한 완화
  3. 프로젝트 열기

    • Android Studio로 프로젝트 열기
    • Gradle 의존성 동기화
  4. 프로젝트 실행

    • 기기 연결 또는 에뮬레이터 실행
    • 실행 버튼 클릭

📖 사용법

기본 조작

  1. 사운드 재생: 사운드 카드를 탭하여 재생, 다시 탭하여 중지
  2. 볼륨 조절: 카드 우측 하단의 볼륨 아이콘을 탭하여 각 사운드별 볼륨 조절
  3. 타이머 설정: 우측 하단의 타이머 버튼으로 자동 중지 시간 설정

인터페이스 조작

  1. 테마 전환: 좌측 상단의 테마 전환 버튼으로 라이트/다크 모드 전환
  2. 커스텀 설정: 설정 페이지에서 테마 색상, 애니메이션 숨김 등 조정
  3. 프리셋 관리: 사운드 카드 제목 탭 후 "프리셋에 추가" 선택
  4. 프리셋 전환: 하단 프리셋 영역에서 3개 프리셋 전환
  5. 즐겨찾기: 사운드 카드 제목 탭 후 "즐겨찾기" 선택
  6. Bilibili 라디오: 라디오 페이지의 검색 버튼을 탭하여 Bilibili 라이브 방송국을 카테고리별로 검색, 핀 아이콘으로 자주 사용하는 방송국 저장

고급 기능

  1. 전역 플로팅 버튼: 사운드 재생 중 플로팅 버튼 표시, 탭하여 재생 목록 확인
  2. 프리셋 일괄 추가: 플로팅 버튼 확장 상태에서 재생 중인 사운드를 프리셋에 일괄 추가
  3. 스마트 숨김: 스크롤 또는 탭 전환 시 플로팅 버튼 자동 숨김

⚠️ 사운드 출처

  • 내장 사운드: 오픈소스 오디오 라이브러리
  • 온라인 사운드: moodist 프로젝트 (MIT 라이선스)
  • 타사 리소스: 일부 사운드는 타사 제공업체에서 제공, 해당 라이선스 적용

🔒 개인정보

이 앱은 사용자의 개인정보 보호를 중요하게 생각합니다. 제품 개선을 위해 익명 사용 통계(활성 사용자 수, 충돌 보고서 등)를 수집하며, 개인 식별 정보는 수집하지 않습니다.

📄 라이선스

이 프로젝트는 MIT License를 따릅니다.

🤝 기여

Issue 및 Pull Request를 환영합니다!

기여 가이드

  1. 이 저장소를 Fork
  2. 기능 브랜치 생성 (git checkout -b feature/AmazingFeature)
  3. 변경사항 커밋 (git commit -m 'Add some AmazingFeature')
  4. 브랜치에 푸시 (git push origin feature/AmazingFeature)
  5. Pull Request 열기

👤 만든 이

Tosencen

🙏 감사의 말


⭐ 이 프로젝트가 도움이 되셨다면 Star를 눌러주세요!

© 2026 XMSLEEP. All rights reserved.

관련 프로젝트 살펴보기