이번 버전에는 새 기능이 없습니다. 눈에 보이던 홈 화면 멈춤, 요청한 대로 움직이지 않던 동작, 그리고 일련의 충돌을 바로잡았습니다. 그중 일부는 여러분이 앱을 보기도 전에 일어나던 것들입니다.

위젯을 추가하면 홈 화면이 멈췄습니다

증상

위젯 목록을 열면 홈 화면이 잠시 멈췄습니다. 최신 기기에서는 머뭇거림처럼 보였습니다. 사양이 낮은 기기에서는 Android가 아예 앱이 응답하지 않는다고 판단했습니다. Android 12를 쓰는 Motorola에서 보고가 들어왔습니다.

원인

목록을 만들기 위해 Sola는 위젯을 제공하는 앱마다 아이콘을 불러옵니다. 이 아이콘들은 단순한 이미지가 아니라, Android가 모양 하나하나를 즉석에서 다시 그려냅니다. Pixel 8 Pro에서 앱당 약 7밀리초, 마흔 개 남짓이면 0.4초에 가깝고, 느린 프로세서에서는 훨씬 더 걸립니다.

문제는 그 비용이 아니라 시점이었습니다. 이 작업은 화면을 그리는 흐름 위에서, 그것도 목록이 나타나기도 전에 이루어졌습니다. 끝날 때까지 아무것도 움직일 수 없었습니다.

수정

이제 불러오기는 뒤에서 이루어집니다. 목록은 곧바로 열리고, 준비되는 대로 채워집니다. 아이콘도 스크롤할 때마다 다시 그리지 않고 한 번만 준비합니다.

같은 기기에서 측정한 결과, 앱을 다시 시작한 뒤 첫 열기 기준으로 멈춤 시간이 394밀리초에서 0으로 줄었습니다. 스크롤도 함께 나아져, 가장 느린 프레임이 97밀리초에서 20밀리초로 떨어졌습니다.

패널이 맨 위에서 멈추지 않고 닫혔습니다

긴 목록의 끝에서 — 위젯이든 앱이든 — 위로 되돌리려 힘껏 쓸어올리면 패널 전체가 닫혔습니다. 여러분이 원한 것은 맨 위로 돌아가는 것이지, 나가는 것이 아니었습니다.

기세를 받은 스크롤이 목록 맨 위에 닿으면 속도가 남습니다. 그 속도가 마치 손가락이 패널을 아래로 끌어내린 것처럼 그대로 전달되어, 닫으려는 뜻으로 받아들여졌습니다.

이제부터는 손가락만이 패널을 닫습니다. 관성으로 올라온 목록은 맨 위에서 멈추고 튕깁니다. Android의 다른 곳과 같습니다. 이미 맨 위에 있다면 아래로 쓸어내려 예전처럼 닫을 수 있습니다. 앱 서랍은 이미 이렇게 움직이고 있었고, 이제 패널들도 같은 규칙을 따릅니다.

기기에 따라 달랐던 충돌

Android의 설정 화면은 제조사마다 같지 않습니다. 문서에 있는데도 일부 기종에는 없는 화면이 여럿입니다. Sola는 그것들을 안전장치 없이 열었고, 해당 기기에서는 앱이 닫혔습니다.

가장 값비싼 경우는 첫 실행 설정 도우미, Sola를 홈 화면으로 지정하도록 권하는 단계에 있었습니다. 그 설정 화면이 없는 기기에서는 맨 처음 만나는 순간 앱이 닫혔습니다. 이제는 일반 설정으로 넘어가고, 도우미는 어떤 경우에도 끝까지 진행됩니다.

같은 취지로, 방금 삭제된 앱을 열려 할 때도 앱을 닫는 대신 메시지를 보여줍니다. 외부 화면을 여는 열다섯 군데를 모두 살펴봤습니다.

고해상도 배경화면에서 설정이 느리게 열렸습니다

배경화면 미리보기를 보여주려고 Sola는 배경화면을 원래 해상도로 불러왔습니다. 최신 기기에서 가로 스크롤용 배경화면은 화면 너비의 두 배입니다. 우표만 한 그림을 그리려고 메모리에서 40메가바이트가 넘게 쓰인 셈입니다.

미리보기는 이제 읽어들이는 단계에서 줄이고, 뒤에서 준비합니다. 메모리가 빠듯한 기기에서는 이 불러오기가 앱 종료로까지 이어질 수 있었습니다.

그 밖에

업데이트 받는 방법

1.0.15는 Play 스토어를 통해 배포됩니다. Play 스토어 앱의 '앱 및 기기 관리'에서 확인을 앞당길 수 있습니다.

Google Play에서 열기