지금까지 아이콘 팩 적용은 화면 전체 단위의 결정이었습니다. 화면 전체가 팩을 따르거나, 아무것도 바뀌지 않거나 둘 중 하나였습니다. 1.0.13 버전은 애플리케이션별 설정을 도입합니다. 설치된 어떤 팩에서도 아이콘을 골라 쓰거나 직접 이미지를 불러올 수 있습니다 — 나머지는 그대로 둔 채 앱 하나만 바꿀 수 있습니다.
이번 버전은 Oppo 기기에서 보고된 홈 화면 충돌과, 새 선택기를 다듬는 과정에서 발견된 두 가지 결함도 함께 수정합니다.
애플리케이션마다 다른 아이콘
홈 화면, 독, 드로어, 폴더 안 등 어디서든 애플리케이션을 길게 누르면 「아이콘 변경」 항목이 나타납니다. 선택기는 두 개의 탭으로 구성되어 있습니다.
추천
첫 번째 탭에는 애플리케이션의 원래 아이콘과, 설치된 각 팩이 바로 이 애플리케이션에 대해 제공하는 아이콘이 이어서 표시됩니다. 전체 테마를 바꾸지 않고 특정 앱만 팩의 스타일을 따르게 하고 싶을 때 가장 빠른 방법입니다.
둘러보기
두 번째 탭에서는 이용 가능한 모든 아이콘을 팩별로 묶어서 볼 수 있으며, 현재 적용 중인 팩이 맨 앞에 표시됩니다. 원래의 대응 관계를 따를 필요는 전혀 없습니다. 교통 관련 앱에 나침반 아이콘을, 동영상 편집 앱에 카메라 아이콘을, 바로가기에 게임 아이콘을 넣을 수도 있습니다. 이 지점에서 커스터마이징이 진정으로 자유로워집니다.
이 탭은 팩이 적용되어 있지 않아도 계속 이용할 수 있습니다. Sola에 내장된 팩은 전체 테마와 무관하게 언제나 사용할 수 있습니다.
나만의 이미지
선택기에는 두 개의 항목이 추가로 있습니다. 「이미지 불러오기」는 사진 선택기를 열고, 「파일에서」는 휴대폰의 파일 탐색기를 엽니다 — 예를 들어 다운로드 폴더처럼 갤러리가 아닌 곳에 저장된 파일에 유용합니다.
선택한 이미지는 가운데를 기준으로 정사각형으로 잘리고 크기가 조정된 뒤, 애플리케이션의 전용 저장 공간에 보관됩니다. PNG, JPEG, WebP, HEIC, AVIF 등 일반적인 형식을 모두 지원합니다. 가장 좋은 결과를 얻으려면 투명 배경의 정사각형 PNG가 여전히 최선의 선택입니다. 투명도가 그대로 유지되고, 설정에서 고른 아이콘 모양이 깔끔하게 적용됩니다.
「초기화」 버튼을 누르면 언제든 애플리케이션을 기본 동작으로 되돌릴 수 있습니다.
드로어의 폴더를 홈 화면으로 보내기
드로어에서 폴더를 길게 누르면 이제 「홈 화면으로 보내기」 항목이 나타납니다. 폴더는 안에 있는 모든 애플리케이션과 함께 홈 화면의 첫 번째 빈 칸에 새로 만들어집니다. 원본은 드로어에 그대로 남습니다. 이동이 아니라 복사입니다.
홈 화면 충돌
증상
Play Console을 통해 접수된 리포트는 Oppo A79 5G(Android 14)에서 홈 화면이 표시되는 순간 충돌이 발생한다고 알려왔습니다. 애플리케이션은 아무 메시지도 없이 즉시 종료되었습니다.
원인
홈 그리드는 표시되는 각 요소가 고유 식별자를 가져야 하는 컴포넌트로 만들어져 있습니다. 이 식별자들은 애플리케이션 이름이나 폴더 이름에서 파생되었습니다. 그런데 기술적으로는 동일한 애플리케이션이나 동일한 폴더가 두 칸을 차지하는 것을 막을 방법이 없습니다. 데이터베이스에서 한 칸을 식별하는 것은 위치이지 내용이 아니기 때문입니다.
이런 상황에서 두 칸이 같은 식별자를 가지게 되었고, 표시 컴포넌트는 그리드 구성을 거부했습니다. 자동 정리 기능이 존재하기는 했지만 백그라운드에서 실행되었기 때문에 — 정리가 끝나기 전에 화면이 표시될 수 있었습니다 — 폴더의 경우는 처리하지 못했습니다.
수정 내용
이제 고유성은 지연된 정리 작업이 아니라, 이 제약이 실제로 적용되는 유일한 지점인 표시되는 순간에 보장됩니다. 인터페이스 다른 곳에서도 같은 유형의 문제를 배제하기 위해, 애플리케이션이나 폴더를 표시하는 나머지 일곱 개의 목록에도 동일한 보호 장치가 확대 적용되었습니다.
이제 전용 테스트가 정확히 이 시나리오를 재현합니다. 의도적으로 중복 항목을 포함한 그리드를 만들고 정상적으로 표시되는지 확인합니다. 이 수정을 제거하면 테스트가 실패하므로, 향후 회귀가 발생하더라도 감지될 것입니다.
아이콘 선택기의 두 가지 결함
기능을 다듬는 과정에서, 배포 전에 발견되었습니다.
선택한 아이콘이 항상 적용되지는 않았습니다. 이미 렌더링된 아이콘은 매번 다시 계산하지 않도록 메모리에 보관됩니다. 이 메커니즘은 이미지가 오래되었다는 사실은 알고 있었지만, 어떤 이미지를 보관하고 있는지는 알지 못했습니다. 아직 갱신되지 않은 목록이 그 자리에 예전 아이콘을 채워 넣으면, 새 아이콘은 무시되고 말았습니다. 이제 이 메커니즘은 각 이미지의 내용을 식별합니다.
불러온 이미지에 흰색 테두리가 생겼습니다. 화면 표시 로직은 흰색 배경과 여백을 적용했는데, 이는 어댑티브가 아닌 예전 형식의 시스템 아이콘에는 적합했지만 사진에는 맞지 않았습니다. 이제 불러온 이미지는 타일 전체를 채웁니다.
번역
전수 점검 결과, 주로 화면 표시 설정과 날씨 표시 부분에서 28개의 문구가 프랑스어 외에는 한 번도 번역된 적이 없다는 사실이 드러났습니다. 다른 모든 언어에서는 앱의 대체 언어인 영어로 표시되고 있었습니다. 이제 지원되는 모든 언어로 번역되었습니다.
업데이트 받는 방법
1.0.13은 Play 스토어를 통해 단계적으로 배포되고 있습니다. Play 스토어 앱의 「앱 및 기기 관리」 섹션에서 업데이트 확인을 직접 실행할 수도 있습니다.
Google Play에서 열기