두 번째 앱 출시기 4 — 도구와 폴더를 줄여도 옛 기록은 남아야 했다
Pocket PDF의 도구를 아홉 개에서 여섯 개로 줄이고 보관함 폴더를 없앴습니다. 기능을 지우면서도 기존 파일 기록을 읽을 수 있도록 타입과 DB 마이그레이션을 남겼습니다.
들어가며
2026년 8월 31일, Pocket PDF에서 문서 분석, 비밀 PDF 열기, 워터마크를 뺐습니다. 홈에는 문서 스캔, 병합, 분할, 이미지 PDF 변환, 전자 서명, 페이지 편집의 여섯 도구를 남겼습니다.
아홉 도구에서 여섯 도구로
뺀 기능도 동작은 했습니다. 다만 문서 분석은 기기 지원 여부에 영향을 받았고, 비밀 PDF 열기는 암호를 이미 아는 경우에 쓰는 기능이었습니다. 워터마크는 아직 출시하지 않은 상태였습니다. 홈의 기능 수를 늘리는 대신 남은 문서 작업을 다듬기로 했습니다.
화면과 ViewModel, 코어 처리, 테스트, 열한 언어의 문자열까지 정리했습니다. 그래도 지우지 않은 이름이 하나 있었습니다. ActivityType.UNLOCK입니다.
화면을 지워도 DB에는 이름이 남습니다
이 타입 이름은 Room에 문자열로 저장되어 있었습니다. v1.0.0을 쓰던 테스터의 기록에도 들어 있었습니다. 모르는 타입을 읽으면 변환 코드가 null을 반환했기 때문에, enum 값을 함께 지우면 예전 기록이 목록에서 빠질 수 있었습니다.
새로 암호 해제 작업을 시작하는 화면은 없애되, 예전에 만든 기록은 읽을 수 있도록 타입을 남겼습니다. 아직 배포한 적 없는 WATERMARK는 같이 제거했습니다. 이름이 비슷한 기능이라도 저장된 기록의 유무가 달랐습니다.
실제 파일을 옮기지 않던 폴더
다음 날에는 보관함의 폴더도 없앴습니다. 이 앱은 문서를 사용자가 고른 저장 위치에 저장했습니다. 앱 안의 폴더가 관리하던 것은 실제 파일이 아니라 그 파일을 가리키는 DB 행이었습니다. 앱 안에서 폴더를 옮겨도 기기의 파일 앱에서는 위치가 바뀌지 않았습니다.
폴더 대신 날짜별로 기록을 묶었습니다. 날짜순으로 볼 때만 묶고, 이름순이나 크기순에서는 사용자가 고른 정렬을 그대로 보여줬습니다. 폴더 칸을 늘리던 보상형 광고도 함께 제거했습니다. 고화질 내보내기에 쓰는 보상형 광고는 남겼습니다.
개발 기기에 있던 버전도 건너뛸 수 없었습니다
폴더가 들어간 DB 버전 2는 정식으로 나가지 않았지만 개발 기기에는 있었습니다. 폴더를 없앴다고 버전을 1로 되돌리지는 않았습니다. 2에서 3으로 가는 마이그레이션을 만들었습니다.
폴더 연결 열이 없는 새 테이블을 만들고 기존 기록을 옮긴 뒤, 폴더 테이블을 제거했습니다. 에뮬레이터에서는 버전 2가 있는 앱 위에 새 버전을 설치해 확인했습니다. user_version은 3이 됐고 folders 테이블은 없어졌으며, 넣어 둔 기록 한 건은 남았습니다.
마치며
당시 스토어 설명에는 아홉 도구라는 표현이 남아 있었고, 폴더 관련 설명도 추가 확인이 필요했습니다. 코드에서 기능을 없애는 것만으로 출시 준비가 끝난 날은 아니었습니다. 앱 안에서는 옛 기록을 보존하고, 앱 밖에서는 이제 없는 기능을 약속하지 않도록 문구를 맞추는 일이 이어졌습니다.