2014-04-17 2 views
1

XE12에서 잘 작동하는 Glass GDK 앱 (open-source on Github)이 있습니다. Glass XE16 KitKat의 [INSTALL_FAILED_MISSING_SHARED_LIBRARY] 오류

나는 어제 XE16 업데이트를 가지고, 나는 유리에 배포 할 gradlew installDebug를 실행할 때 지금은 메시지를 얻을 :

: onebusaway - 안드로이드 : installDebug
PKG :/데이터/지역/tmp를/onebusaway - 안드로이드 - 디버그 - unaligned.apk 실패 [INSTALL_FAILED_MISSING_SHARED_LIBRARY]

는 여기에 내가 XE16로 업데이트 변경 한 내용은 다음과 같습니다

  1. 나는 사전 제작 음색에 대한 명시 할 <android-sdk>/add-ons/addon-google_gdk-google-19/libs
  2. 추가 <uses-permission android:name="com.google.android.glass.permission.DEVELOPMENT"/>에서 나의 compileSdkVersion
  3. "Google Inc.:Glass Development Kit Preview:19"에 내가 파일에 /libs 폴더에 gdk.jar 업데이트되었습니다 변경

(I 명령했습니다 실제로 XE16 업데이트를 받기 전에 이러한 변경을했습니다. XE16을 다른 사용자가 사용하지 못했기 때문에 XE16 업데이트가 정상적으로 작동한다는 것을 확인할 수 있습니다.

나는 this third-party progress bar library를 사용하지만이 버전에서 무엇을 말할 수에서 아무것도 그것이 의존하는 유일한 유리 특정 클래스가있는 GestureDetector 또는 Gesture 유리 클래스로 변경되었습니다 지적하고있다.

내 Glassware는 몰입 형 활동이므로 TimelineManager 또는 카드 (XE16에서 변경됨)에 의존하지 않습니다.

편집

나는 타사 진행률 표시 줄을 제거하려했지만, 그 어떤 영향이하지 않는 것 - 여전히 같은 오류가 발생했습니다.

나는 또한 안드로이드 스튜디오 0.5.5로 업데이트했는데, 거기에서 배포하는 것도 (명령 행에서 gradlew installDebug을 실행하는 것과는 대조적으로). 또한 /libs/gdk.jar을 제거하려고 시도했지만 Android Studio 0.5.5에서는 필요하지 않으므로 변경하지 않아도됩니다.

+0

어떤 개발 환경을 사용하고 있습니까? (ADT?) – ErstwhileIII

+0

'gradlew installDebug'명령 줄에서 Gradle을 실행 중이지만 Android Studio 내에서 시도하고 있습니다. 둘 다 일하지 않아. –

답변

2

AndroidManifest.xml에서 Glass가 지원하지 않는 요소가있는 경우 해당 기기를 XE16에 설치하려면 android:required="false" 속성을 포함하거나 요소를 완전히 제거해야합니다. 이것은 XE12의 동작 변화입니다. 에 따르면

Android docs : <uses-library> 요소가 존재하고 android:required 속성이 true로 설정되어

경우, PackageManager 프레임 워크는 라이브러리가 사용자의 장치에 존재하지 않는 사용자가 응용 프로그램을 설치하지 않습니다 ... 기본 android : 필수 값은 "true"입니다.

내가 내 유리 응용 프로그램에 대한 일반 안드로이드 응용 프로그램에서 코드를 빌려, 나는 매니페스트에 묻혀 남은 요소했다 :

<uses-library android:name="com.google.android.maps"/> 

내가 android:required="false"을 포함하지 않았기 때문에를, XE (16)은 제대로입니다 앱 설치를 방해합니다.

분명히 XE12가이를 시행하지 않아 어쨌든 앱을 설치했습니다.

<uses-library android:name="com.google.android.maps" 
       android:required="false"/> 

... 또는 완전히이 <uses-library> 요소를 제거 앱이 지금 XE16에 제대로 설치 : 중 하나 android:required="false" 속성을 추가 한 후

.

관련 문제