Installation failed due to invalid APK file?
I just downloaded an example program of AR in metaio. When I run or build the program. The error displayed: Installation failed due to invalid APK file! [2011-08-29 21:15:30 - Example_SDK] Please check logcat output for more details. [2011-08-29 21:15:30 - Example_SDK] Launch canceled!
Here is the logcat. I have read other issues regarding on this matter but it still did not work including making sure the phone and sdk target device version is the same.
08-29 21:15:00.186: VERBOSE/LocationManagerService(102): _removeUpdates: listener = Receiver{44aa7230 Intent PendingIntent{44bd8348: PendingIntentRecord{44aa6930 com.google.android.apps.maps startService}}}
08-29 21:15:00.206: DEBUG/TrafficAppWidgetUp开发者_开发问答dateService(1165): No longer requesting location updates.
08-29 21:15:05.846: DEBUG/UsbConnectionSettings(1188): -enableChargeOnly()
08-29 21:15:05.846: INFO/global(1188): Default buffer size used in BufferedReader constructor. It would be better to be explicit if an 8k-char buffer is required.
08-29 21:15:05.856: DEBUG/UsbConnectionSettings(1188): usb_cable_connect = 1
08-29 21:15:05.916: DEBUG/UsbConnectionSettings(1188): -onPause()
08-29 21:15:06.056: INFO/LSState(102): EventReceiver:android.intent.action.NOTIFICATION_ADD
08-29 21:15:06.206: WARN/InputManagerService(102): Starting input on non-focused client com.android.internal.view.IInputMethodClient$Stub$Proxy@44ea6148 (uid=10005 pid=1188)
08-29 21:15:06.896: DEBUG/UsbConnectionSettings(1188): -onStop()
08-29 21:15:06.896: DEBUG/UsbConnectionSettings(1188): -onDestroy()
08-29 21:15:14.076: DEBUG/dalvikvm(1188): GC_EXPLICIT freed 1940 objects / 164512 bytes in 115ms
08-29 21:15:27.726: DEBUG/TrafficAppWidgetUpdateService(1165): Got widget id to update: 20
08-29 21:15:27.746: DEBUG/TrafficAppWidgetUpdateService(1165): Scheduled update for 20 in 29 s.
08-29 21:15:27.756: WARN/TrafficAppWidgetUpdateService(1165): Requested widget update, but no data found for id: 20
08-29 21:15:27.766: VERBOSE/LocationManagerService(102): _removeUpdates: listener = Receiver{44aa5aa8 Intent PendingIntent{44d17750: PendingIntentRecord{44aa6930 com.google.android.apps.maps startService}}}
08-29 21:15:27.776: DEBUG/TrafficAppWidgetUpdateService(1165): No longer requesting location updates.
08-29 21:15:28.526: DEBUG/TrafficAppWidgetUpdateService(1165): Got widget id to update: 25
08-29 21:15:28.526: DEBUG/TrafficAppWidgetUpdateService(1165): Scheduled update for 25 in 29 s.
08-29 21:15:28.536: WARN/TrafficAppWidgetUpdateService(1165): Requested widget update, but no data found for id: 25
08-29 21:15:28.556: DEBUG/TrafficAppWidgetUpdateService(1165): No longer requesting location updates.
08-29 21:15:28.556: VERBOSE/LocationManagerService(102): _removeUpdates: listener = Receiver{44d1b8f8 Intent PendingIntent{44cb74e0: PendingIntentRecord{44aa6930 com.google.android.apps.maps startService}}}
08-29 21:15:29.574: INFO/wpa_supplicant(170): CTRL-EVENT-STATE-CHANGE id=22 state=6
08-29 21:15:29.576: VERBOSE/WifiMonitor(102): Event [CTRL-EVENT-STATE-CHANGE id=22 state=6]
08-29 21:15:29.576: INFO/wpa_supplicant(170): WPA: Group rekeying completed with 00:26:5a:cb:c8:73 [GTK=TKIP]
08-29 21:15:29.576: INFO/wpa_supplicant(170): CTRL-EVENT-STATE-CHANGE id=22 state=7
08-29 21:15:29.576: VERBOSE/WifiStateTracker(102): Changing supplicant state: COMPLETED ==> GROUP_HANDSHAKE
08-29 21:15:29.586: VERBOSE/WifiMonitor(102): Event [WPA: Group rekeying completed with 00:26:5a:cb:c8:73 [GTK=TKIP]]
08-29 21:15:29.586: VERBOSE/WifiMonitor(102): Event [CTRL-EVENT-STATE-CHANGE id=22 state=7]
08-29 21:15:29.596: VERBOSE/WifiStateTracker(102): Changing supplicant state: GROUP_HANDSHAKE ==> COMPLETED
08-29 21:15:32.836: DEBUG/dalvikvm(350): GC_EXPLICIT freed 1942 objects / 105944 bytes in 99ms
08-29 21:15:37.856: DEBUG/dalvikvm(581): GC_EXPLICIT freed 2758 objects / 105040 bytes in 111ms
08-29 21:15:40.119: VERBOSE/AlarmManager(102): Alarm triggering: Alarm{44e30020 type 2 com.google.android.location}
08-29 21:15:40.136: DEBUG/WifiService(102): acquireWifiLockLocked: WifiLock{NetworkLocationProvider type=2 binder=android.os.Binder@44c729f8}
08-29 21:15:40.146: DEBUG/WifiService(102): enable and start wifi due to updateWifiState
08-29 21:15:40.146: VERBOSE/AlarmManager(102): Adding Alarm{44f62eb0 type 2 com.google.android.location} Jan 01 08:25:58 am
08-29 21:15:41.036: INFO/wpa_supplicant(170): CTRL-EVENT-SCAN-RESULTS Ready
08-29 21:15:41.066: DEBUG/LocationMasfClient(102): getNetworkLocation(): Returning cache location with accuracy 50.0
08-29 21:15:41.496: DEBUG/dalvikvm(1172): GC_FOR_MALLOC freed 4875 objects / 483848 bytes in 110ms
08-29 21:15:41.576: VERBOSE/LocationManagerService(102): _removeUpdates: listener = Receiver{44dfe9e8 Intent PendingIntent{44d7c620: PendingIntentRecord{44dfe990 com.google.android.apps.maps startService}}}
08-29 21:15:42.666: WARN/LocationMasfClient(102): uploadCollectionReport(): no ReplyElement
08-29 21:15:43.966: DEBUG/dalvikvm(1180): GC_FOR_MALLOC freed 5896 objects / 403016 bytes in 106ms
08-29 21:15:44.446: DEBUG/dalvikvm(1172): GC_FOR_MALLOC freed 8146 objects / 419664 bytes in 114ms
08-29 21:15:45.147: VERBOSE/AlarmManager(102): Alarm triggering: Alarm{44f62eb0 type 2 com.google.android.location}
08-29 21:15:45.166: VERBOSE/AlarmManager(102): Adding Alarm{44a76a50 type 2 com.google.android.location} Jan 01 08:26:53 am
08-29 21:15:45.176: DEBUG/WifiService(102): releaseWifiLockLocked: WifiLock{NetworkLocationProvider type=2 binder=android.os.Binder@44c729f8}
08-29 21:15:45.186: DEBUG/WifiService(102): enable and start wifi due to updateWifiState
08-29 21:15:56.746: DEBUG/TrafficAppWidgetUpdateService(1165): Got widget id to update: 20
08-29 21:15:56.756: DEBUG/TrafficAppWidgetUpdateService(1165): Scheduled update for 20 in 29 s.
08-29 21:15:56.776: WARN/TrafficAppWidgetUpdateService(1165): Requested widget update, but no data found for id: 20
08-29 21:15:56.806: DEBUG/TrafficAppWidgetUpdateService(1165): No longer requesting location updates.
08-29 21:15:56.806: VERBOSE/LocationManagerService(102): _removeUpdates: listener = Receiver{44e5c5b0 Intent PendingIntent{44b54330: PendingIntentRecord{44aa6930 com.google.android.apps.maps startService}}}
08-29 21:15:57.536: DEBUG/TrafficAppWidgetUpdateService(1165): Got widget id to update: 25
08-29 21:15:57.556: DEBUG/TrafficAppWidgetUpdateService(1165): Scheduled update for 25 in 29 s.
08-29 21:15:57.566: WARN/TrafficAppWidgetUpdateService(1165): Requested widget update, but no data found for id: 25
08-29 21:15:57.596: VERBOSE/LocationManagerService(102): _removeUpdates: listener = Receiver{44e873d8 Intent PendingIntent{44b781c8: PendingIntentRecord{44aa6930 com.google.android.apps.maps startService}}}
08-29 21:15:57.606: DEBUG/TrafficAppWidgetUpdateService(1165): No longer requesting location updates.
08-29 21:16:03.556: DEBUG/AndroidRuntime(1305): >>>>>>>>>>>>>> AndroidRuntime START
----
I really have no idea what is the problem.
The metaio Mobile SDK is only supported on armeabi-v7a. There will be a native ABI mismatch if you try to install the APK on a device that does not support armeabi-v7a.
I have exactly the same problem as you. From what I understand, I need to run ndk on the librairy since the problem of Native ABI mismatch can be solved that way (found that while Googleing it)
Here's the output of logcat (if it can help us with the issue) :
11-15 20:27:45.858: D/PackageParser(59): Scanning package: /data/app/vmdl36057.tmp
11-15 20:27:46.628: D/PackageManager(59): Scanning package com.metaio.example
11-15 20:27:46.639: I/PackageManager(59): /data/app/com.metaio.example-1.apk changed; unpacking
11-15 20:27:46.658: W/PackageManager(59): Native ABI mismatch from package file
11-15 20:27:46.658: W/PackageManager(59): Package couldn't be installed in /data/app/com.metaio.example-1.apk
11-15 20:27:46.758: D/dalvikvm(59): GC_EXPLICIT freed 8795 objects / 479824 bytes in 97ms
11-15 20:27:46.838: D/AndroidRuntime(195): Shutting down VM
11-15 20:27:46.838: D/jdwp(195): adbd disconnected
11-15 20:27:46.848: I/AndroidRuntime(195): NOTE: attach of thread 'Binder Thread #3' failed
精彩评论