단어장 앱이 인터넷 없이 안 열리는 이유
지하철에서 단어 스무 개만 보려고 앱을 열었는데 로딩만 돕니다. 단어는 이미 내 폰에 있는데 — 내가 직접 적었는데 — 왜 신호가 있어야 보여줄까요. 대개는 내 단어와 상관없는 무언가가 첫 화면을 붙잡고 있기 때문입니다.
첫 화면을 막는 네 가지
- 시작할 때 도는 클라우드 동기화. 드라이브나 서버에 백업하는 앱은 목록을 그리기 전에 맞춰 보려 합니다. 연결이 느리거나 어중간하면 실행이 그대로 멈춥니다. 아예 끊긴 연결은 빨리 실패하지만, 약한 신호가 더 나쁩니다. 타임아웃이 30초를 넘기도 합니다.
- 로그인·토큰 갱신. 계정이 있는 앱은 실행할 때 세션을 갱신합니다. 오프라인이면 그 요청이 멈추고, 일부 앱은 "아직 인증 안 됨"을 "아무것도 보여줄 수 없음"으로 처리합니다.
- 번역·사전 자동완성. 단어를 치면 뜻을 채워 주는 기능은 번역 서비스를 씁니다. 원래는 단어 추가 화면에만 영향이 있어야 하지만, 같은 클라이언트를 시작할 때 초기화하면 앱 전체가 거기서 기다립니다.
- 광고 SDK·원격 설정. 스플래시가 광고나 설정 응답을 기다리면 자기 타임아웃이 끝날 때까지 그대로 있습니다. 잘 만든 앱은 2~3초로 끊고 넘어가고, 아닌 앱은 무한정 기다립니다.
어느 쪽인지 구별하기
- 비행기 모드로 켜 봅니다. 오프라인에서는 바로 열리는데 약한 신호에서만 멈춘다면, 기능이 없는 게 아니라 네트워크 타임아웃을 기다리는 겁니다.
- 어디서 멈추는지 봅니다. 스플래시·로고에서 멈추면 시작 작업, 목록은 떴는데 "추가"를 눌렀을 때 멈추면 자동완성이 원인이고 나머지는 멀쩡합니다.
- 데이터가 늘수록 심해지는지 봅니다. 동기화 지연은 단어가 많아질수록 길어지고, 광고 타임아웃은 항상 같은 길이입니다.
- 로그아웃해 봅니다. 로그아웃 상태에서는 오프라인으로 되고 로그인하면 멈춘다면 계정 쪽이 범인입니다.
지금 할 수 있는 것
- 설정에서 자동 동기화를 끄고 와이파이일 때만 수동으로 맞춥니다.
- 번역 자동완성 토글이 있으면 끄고 뜻은 직접 적습니다.
- 지하로 들어가기 전에 비행기 모드로 바꾸면 오히려 빠릅니다. 실패가 즉시 나기 때문입니다.
- 무엇을 바꾸기 전에 백업부터 내보냅니다. 동기화에서 멈추는 앱은 그 동기화가 잘못 끝날 때 데이터를 잃기도 쉽습니다.
정말 오프라인인 앱은 이렇게 생겼습니다
판단 기준은 소개글에 "오프라인 지원"이라 적혀 있느냐가 아니라, 공부하는 경로가 네트워크를 건드리느냐입니다. 단어를 추가할 때 조회가 필요한가, 계정이 있는가, 첫 화면이 무언가를 기다린 뒤에 목록을 그리는가. 단어를 기기에 저장하고, 뜻은 내가 입력하고, 광고나 설정 대기를 스플래시 뒤에서 짧게 끊는 앱은 엘리베이터에서도 비행기에서도 지하에서도 늘 같은 속도로 열립니다.
백업도 같은 기준으로 보세요. 내가 내보내 보관하는 파일은 내 힘으로 복구되지만, 계정 동기화는 필요한 그날 서비스와 로그인과 네트워크가 모두 협조해야 복구됩니다.
Vocadeck
Vocadeck 은 바로 이 불만 하나를 기준으로 만들었습니다. 계정도 클라우드 동기화도 번역 서비스도 없어서 공부 경로에서 멈출 것이 없습니다. 단어 추가, 플래시카드, 사지선다, 홈 화면 위젯, 알림이 전부 기기 안에서 돕니다. 네트워크를 쓰는 건 광고뿐이고, 광고가 단어 목록을 늦추지 않습니다. 백업은 직접 내보내 보관하는 CSV 파일입니다.