이번 버전은 갤러리에 배경화면 6종을 추가하고, 저마다의 방식으로 약속보다 덜 해내고 있던 세 가지 기능을 수정합니다. 화면이 켜져 있을 때만 걸음을 세던 걸음 수, 한 번 거부하면 영영 접근할 수 없게 되던 캘린더, 그리고 사용자 지정 아이콘을 빠뜨리던 백업입니다.

새로운 배경화면 6종

애니메이션 배경화면 3종이 갤러리에 추가됩니다. 아늑함 테마의 포근한 산장로파이 빗소리, 산 테마의 별빛 봉우리입니다. 숲 테마에는 사진 3장이 더해집니다: 안개 낀 소나무숲, 외로운 나무, 새벽의 숲입니다.

유용한 참고 사항이 하나 있습니다. 아늑함 테마의 애니메이션 배경화면 2종은 가로 형식으로 촬영되었습니다. 태블릿에서는 원래 구도 그대로 화면을 채우지만, 세로로 든 휴대폰에서는 가운데를 기준으로 잘리기 때문에 장면의 일부가 화면 밖으로 벗어납니다. 「별빛 봉우리」는 원래부터 세로 형식입니다.

다른 애니메이션 배경화면과 마찬가지로 이 영상들은 애플리케이션에 포함되어 있지 않습니다. 처음 표시될 때 다운로드되어 기기에 저장됩니다. 애플리케이션 용량은 300KB만 늘어나며, 한 번 적용한 배경화면은 이후 오프라인 상태에서도 계속 사용할 수 있습니다.

화면이 켜져 있을 때만 걸음을 세던 걸음 수

증상

왼쪽 페이지의 걸음 수는 고집스럽게 0에 머물러 있었습니다. 자세히 살펴보면 결국 숫자가 올라가긴 한다는 것을 알 수 있었지만, 그 페이지가 화면에 표시되어 있는 동안에만 그랬습니다. 사실상 절대 오르지 않는 것과 같습니다. 홈 화면을 계속 쳐다보면서 걷는 사람은 없으니까요.

원인

두 가지 요인이 겹쳐 있었습니다. 먼저 Android 자체의 문제입니다. 몇 버전 전부터 포그라운드에 있지 않은 애플리케이션은 동작 센서에 대한 접근 권한을 잃습니다. 화면이 꺼져 있거나 다른 애플리케이션이 열려 있는 상태로 걷는 동안, Sola는 더 이상 아무 측정값도 받지 못합니다.

그다음은 코드 자체의 문제였습니다. 하루의 「기준점」을 처음 수신한 측정값으로 고정하고 있었습니다. 이 첫 측정값은 페이지를 열었을 때만 들어왔기 때문에, 아침부터 이미 걸었던 걸음이 모두 이 기준점에 흡수되어 사라졌습니다. 확인하려는 바로 그 순간, 오전 내내 걸었던 걸음이 통째로 사라지는 셈이었습니다.

수정 내용

이 두 결함이 놓치고 있던 사실은, 휴대폰의 센서 자체는 계산을 절대 멈추지 않는다는 점입니다. 애플리케이션이 닫혀 있어도 하드웨어 수준에서는 계속 걸음을 세고 있습니다. 이제 계산은 누적 증분을 기반으로 이루어집니다. 측정값을 받을 때마다 Sola는 이전 측정값과의 차이를 더합니다.

구체적으로는 이렇습니다. 휴대폰을 주머니에 넣은 채 2,000걸음을 걷고 페이지를 열면, 2,000걸음이 한 번에 나타납니다. 두 가지 특수한 경우도 명시적으로 처리됩니다. 하나는 휴대폰 재시작입니다. 센서가 0으로 초기화되면서 예전에는 다음 날까지 걸음 수가 멈춰 있곤 했습니다. 다른 하나는 자정이 지나는 순간으로, 새벽에 이미 걸은 걸음을 지우지 않으면서 하루의 걸음 수를 0으로 되돌립니다.

한 번 거부하면 되돌릴 수 없던 캘린더

처음 실행할 때 Sola는 다음 일정을 표시하기 위해 캘린더 접근 권한을 요청합니다. 거부하면 해당 설정이 비활성화되었고, 이후 다시는 권한을 요청하지 않았습니다. 기능은 그대로 사라졌고, 어떻게 되찾을 수 있는지 알려주는 안내도 전혀 없었습니다.

이제 권한이 없으면 홈 화면 위젯에 「캘린더 접근 허용」이라는 항목이 표시되며, 탭 한 번으로 요청할 수 있습니다. 거부해도 더는 아무것도 비활성화되지 않습니다. 해당 항목은 그대로 남아 있고, 언제든 마음이 바뀌면 다시 시도할 수 있습니다. 여러 번 거부한 뒤 Android가 요청을 완전히 차단한 경우에는, 탭하면 곧바로 애플리케이션 설정 화면이 열립니다.

추가된 점이 하나 더 있습니다. 권한은 허용되었지만 캘린더가 비어 있는 경우, 위젯은 아무것도 표시하지 않는 대신 「예정된 일정 없음」을 보여줍니다. 정보가 없다는 것도 이제는 하나의 정보입니다.

사용자 지정 아이콘을 빠뜨리던 백업

백업 기능은 애플리케이션의 데이터 테이블 12개 중 8개만 내보내고 있었습니다. 빠져 있던 것은 이전 버전에서 도입된 사용자 지정 아이콘, 사용자가 만든 카테고리와 그 이름 변경 및 순서였습니다. 직접 불러온 이미지도 백업 파일에 포함되지 않았습니다.

이제 이미지를 포함해 이 모든 것이 백업됩니다. 이미지 없이 아이콘만 복원된다면 빈 타일만 남을 테니까요.

복원 동작 방식도 바뀌었습니다. 예전에는 백업을 가져오면 모든 것이 교체되었습니다. 이제는 파일에 담기지 않은 항목은 건드리지 않습니다. 사용자 지정 아이콘이 나오기 전에 만들어진 오래된 백업을 복원해도 더 이상 기존 아이콘이 지워지지 않습니다. 복원되지 않은 항목이 있으면 무엇이, 왜 복원되지 않았는지 메시지로 명확히 안내합니다.

의도적으로 남겨둔 한계도 있습니다. 직접 불러온 배경화면은 여전히 백업 파일에서 제외됩니다. 수십 메가바이트에 달하는 동영상이기 때문에, 이를 포함하면 백업 파일을 옮기기 어려워집니다.

업데이트 받는 방법

1.0.14는 Play 스토어를 통해 단계적으로 배포되고 있습니다. Play 스토어 앱의 「앱 및 기기 관리」 섹션에서 업데이트 확인을 직접 실행할 수도 있습니다.

Google Play에서 열기