NDK(3)
-
[갤럭시S24] 앱이 휴대전화와 호환되지 않아서 설치되지 않았습니다. (해결편)
지난번에는 갤럭시S24 에서 발생하는 앱이 호환되지 않아서 설치가 불가한 이슈 현상에 대해서 살펴보았습니다. 이번에는 그 해결책을 써보도록 하겠습니다. 여기서부터는 개발적인 영역이며, APK 강제 설치와 같은 내용은 없으니, 개발자가 아니신 분께는 별 도움이 되지 않을 수 있습니다. 원인 : 아래 라이언이 있는 부분을 보면 armeabi, armeabi-v7a 가 보입니다. 이 부분이 32bit AP를 위한 jniLibs 부분이며, 하드웨어나 센서등을 사용하기 위한 C or C++ 기반의 라이브러리와 자바/코틀린 간의 인터페이스를 위해 선언하는 부분입니다. 현재 갤럭시S24와 발생하는 호환성 이슈 대부분은 jniLibs 에 담긴 라이브러리가 "arm64-v8a", 즉 64bit와 호환되는 라이브러리가 없..
2024.02.05 -
[갤럭시S24] 앱이 휴대전화와 호환되지 않아서 설치되지 않았습니다.
최근 갤럭시S24 가 출시되고 사용자가 늘어나면서, 앱이 휴대전화와 호환되지 않아서 설치되지 않았습니다. 라는 에러가 많아지고 있습니다. 다른 모델과 달리 갤럭시S24 계열에서 유독 이런 오류가 많아지는 까닭은 AP의 아키텍처가 변경이 그 이유가 될 수 있습니다. 갤럭시S24 AP 부터 64비트만 지원하는 AP로 변경되면서, 기존의 32비트로 동작하는 모바일 앱이 설치되지 않거나 설치되더라도 정상 동작을 하지 않는 것입니다. 보통 암호화 기능, 카메라 기능 등을 사용하는 앱에서 발생하는 것 같습니다. 이유는 64비트 AP와 호환되지 않는 라이브러리라 앱 안에 내장되어 있기 때문인데요, 이 경우는 답이 없습니다. 앱 개발사에서 직접 64비트 AP에 호환되도록 앱을 업데이트 해주어야 합니다. 조금 더 얘기해..
2024.01.29 -
안드로이드 자바 java.lang.UnsatisfiedLinkError: dlopen failed: library "xxx.so" not found 해결 방법
모바일 하이브리드 앱 개발 중 빌드 후 휴대폰에서는 잘 동작하나, 안드로이드 에뮬레이터 상에서는 동작하지 않는 이슈가 발생하여 한참을 삽질한 결과 해결 방법을 찾아냈다. 에러 로그 전문 서드파티 so 파일을 찾을 수 없어 발생하는 에러였다. 개발중인 하이브리드 앱에는 서드파티 so 라이브러리가 내장되는데, arm64-v8a, armeabi, arm64-v7a 이 3가지 ABI 형태의 so 파일이 사용되고 있다. 휴대폰의 ABI는 arm64-v7a 였으나, 안드로이드 에뮬레이터는 x86_64로 확인되었다. 구글링 끝에 ndk 빌드 시 ABI를 지정해줌으로써 에뮬레이터에서도 돌아가는 것을 확인할 수 있었다. App 수준 build.gradle에 ndk 관련 옵션 추가 후 재빌드 및 실행 android { d..
2023.08.17