공유했던 미니게임이 설치가 되지 않는다는 제보를 받았습니다.
폰 기종을 물어보니 갤럭시 s24 시리즈 중 하나라고 하더군요.
원인 1. API 버전 체크
File > Build Setting > Player Setting > Other Settings > Identification > Target API Level 확인
기본적으로 가장 높은 레벨을 선택하고 있고 유니티에서 자동 업데이트를 지원하여 여기서 문제가 발생할 일은 적습니다.
이를 눌러 가장 아래 항목을 확인하고 인터넷에 최신 안드로이드 API 레벨을 검색하여 일치하는지 보고
다를 경우 유니티 안드로이드 SDK API 업데이트에 관한 것을 검색해 보시면 상세한 방법을 찾을 수 있습니다.
제 경우엔 현재까지 나온 최신 버전이었고 최고 레벨까지 자동으로 설정되어 있어
문제의 원인이 아닌 것으로 보입니다
그래서 해당 증상에 대해 검색을 해보니
오래 지나지 않아 해당 이슈와 마주할 수 있었습니다
S24+ 앱이 휴대전화와 호환되지않아
앱이 휴대전화와 호환되지않아 설치되지 않았습니다 이거 앱이 문제가아니라 걍 폰자체 문제같은데요 똑같은어플 스토어에서는 설치되는데 apk로만 설치가 안됩니다 보안위험 자동차단 해제하
r1.community.samsung.com
해당 게시글에서 관리자 분의 말에서 얻을 수 있는 힌트는
원인 2. 앱스토어의 최신 버전과 일치하지 않음
앱스토어 출시 앱이 문제를 일으킨다면 apk 파일의 버전이 앱스토어 버전과 같은지 버전 체크도 해봐야 합니다.
버전이 일치해도 변조한 apk 파일의 설치를 막을 수도 있다고 합니다.
원인 3. 64비트에서도 동작하게끔 호환성 설정 필요
즉시 64비트에서도 호환되도록 앱 설정을 변경해 보았습니다.
해당 설명은 에디터 버전 2022.3.21f1 기반으로 드리는 것으로 이후 버전에서는 상이할 수 있습니다.
Edit > Project Settings > Player > 안드로이드 아이콘 탭 > Scripting Backend
기본 설정인 Mono 를 IL2CPP로 바꾸면
아래 Target Architectures의
ARM64 체크박스가 활성화 되는데
이를 체크하여 64비트 실행 상태도 타겟으로 빌드하면
호환성 문제가 해결될 것입니다.
참고 메뉴얼
https://docs.unity3d.com/kr/2021.1/Manual/scripting-backends.html
스크립팅 백엔드 - Unity 매뉴얼
Unity에는 두 가지 스크립팅 백엔드, 즉 Mono와 IL2CPP(Intermediate Language To C++)가 있으며, 각각 다른 컴파일 기술을 사용합니다.
docs.unity3d.com
64비트 호환 설정 후 빌드하여 배포했더니 이전에 버그를 제보했던 사용자로부터 설치 및 플레이가 원활하게 되었다는 답변을 받았습니다.
'Unity 에러 노트' 카테고리의 다른 글
게임 오브젝트 비활성화 후 다시 활성화 시 애니메이터 파라미터 값 초기화 (0) | 2024.10.01 |
---|---|
매뉴얼에서 알려주지 않은 코루틴 WaitForSeconds()의 매개변수 t에 대해 (0) | 2024.04.15 |
Edge Collider 2D 스크립팅 툴팁 오기 (0) | 2024.03.10 |
인스펙터에 스크립트 활성/비활성 체크 박스 사라짐 (0) | 2023.10.12 |
스프라이트 마스크가 다른 오브젝트의 스프라이트를 출력할 때 (0) | 2023.09.15 |