여기 상황이 있습니다. 다른 애플 리케이션에서 재배포하기 위해 기본 라이브러리를 구축했습니다. 우리는 ARMv7 NEON을 사용하기 때문에 두 가지 버전의 라이브러리를 제공합니다. 하나는 대부분의 장치 용이고 다른 하나는 ARMv5/ARMv6 용 "폴백"제한된 기능 버전입니다. 지금까지 그렇게 좋았고 이것은 잘 돌아갔다.Android 4.0에서 포함 된 라이브러리에 대한 잘못된 eabi의 압축을 푸십시오.
그러나 어떤 이유로 Android 4.0.3이 설치된 Nexus S에서 새로 생성 된 앱이 라이브러리의 잘못된 버전 (armeabi-v7a 대신 armeabi)을 선택합니다.
디바이스 파일 시스템을 파고 들면, /data/app/my_app.apk에 올바른 버전의 라이브러리가 포함되어 있습니다. 그러나 Android가/data/data/my_app로 추출하면 /data/data/my_app/lib/my_lib.so가 armeabi 버전이라는 것을 알 수 있습니다. 그러나, 이상하게도 /data/data/my_other_app/lib/my_lib.so가 올바른 armeabi-v7a 버전입니다.
그래서 질문은 다음과 같습니다. 1) WTF ?? 2) Android에서 APK에서 추출 할 eabi를 어떻게 결정합니까?
나는 또한 그 my_app.apk을 언급해야한다는 안드로이드 2.2.1 전화에 완벽하게 실행됩니다. 질문 1로 돌아갑니다. – tomwhipple