2010-01-12 3 views
4

알고 싶습니다. 아키텍처에 현명한 문제가 있습니까?INSTALL_FAILED_CPU_ABI_INCOMPATIBLE이 (가) 해결 방법은 무엇입니까?

+1

어떤 장치를 설치하고 있습니까? 기기의 SDK 버전은 무엇이며 타겟팅 대상은 무엇입니까? 앱에서 기본 라이브러리를 사용하고 있습니까? –

+0

NDK를 사용하여 ARM 기반 머신 코드를 생성 할 수 있습니다. x86 CPU에서 실행할 방법은 없습니다. 공식적으로 지원되는 x86 Android 시스템 이미지가 없기 때문에 현재로서는 x86에 대한 지원이 없습니다. https://groups.google.com/forum/?fromgroups=#!msg/android-ndk/bx9C1rtUZ_I/tpBLdeIzKigJ를 참조 할 수 있습니다. – Dharmendra

+0

intelij 아이디어를 사용하는 경우 여기에서 답변을 찾으십시오. http://stackoverflow.com/questions/15958861/install-failed-cpu-abi-incompatible-on-device-using-intellij –

답변

3

ABI (Application Binary Interface)는 시스템 아키텍처와 관련된 세부 사항을 지정합니다. 위키 :

ABI는이 같은 데이터 유형, 크기, 정렬 등의 세부 사항을 포함; 규칙은 함수의 인수가 전달되고 반환 값이 검색되는 방법을 제어합니다. 시스템 전화 번호 및 응용 프로그램이 운영 체제에 시스템 호출을해야하는 방법; 운영 체제 ABI의 경우에는 오브젝트 파일, 프로그램 바이너리 형식 등이 있습니다.

는 "PackageManager.java"파일이 발견 :

공공 정적 최종 INT INSTALL_FAILED_CPU_ABI_INCOMPATIBLE = -16;

설치 리턴 코드 : 설치되는 패키지 네이티브 코드를 포함하지만, 그럼에도 장치의 CPU_ABI와 호환 없는 그 경우이 installPackage(android.net.Uri, IPackageInstallObserver, int)하여 IPackageInstallObserver에 전달 입니다.

apk에는 다른 컴퓨터 (에뮬레이터)에 설치되는 동안 다른 컴퓨터/에뮬레이터에 대해 컴파일 된 일부 바이너리 코드가 포함되어야합니다 (NDK? 사용).

2

BlueStacks 지원 포럼에서이 스레드에 대한 참조를 보았습니다. BlueStacks를 언급하는 경우 네이티브 ARM 코드가 있고 X86 아키텍처에서 작동하는 이진 변환이 필요한 응용 프로그램을 설치하려고하면이 오류가 발생합니다.

현재 알파 버전에서는 지원되지 않습니다.

[편집] BlueStacks와 관련된 질문이 있으시면 BlueStacks 커뮤니티에 게시하십시오. 이 항목과 같은 일반적인 문제에 대한 답변을 찾을 수도 있습니다.

1

avd가 대상 SDK 버전으로 변경되어 정상적으로 작동했습니다.

관련 문제