Hi,
Last weeks I created an app for the iPhone using Titanium. It accepted and available in the appstore. Now my customer asked for an Android version as well. So I created a new project and merged the iPhone data in it. And that works perfect.
The android emulator however constantly errors on a missing shared library. I browsed through several forums, but couldn't find a solution. Most solutions are about the right Google API's and those are installed.
Please find my android target list below:
Available Android targets:
id: 1 or "android-3" Name: Android 1.5 Type: Platform API level: 3 Revision: 4 Skins: HVGA (default), HVGA-L, HVGA-P, QVGA-L, QVGA-P ABIs : armeabi
id: 2 or "Google Inc.:Google APIs:3" Name: Google APIs Type: Add-On Vendor: Google Inc. Revision: 3 Description: Android + Google APIs Based on Android 1.5 (API level 3) Libraries: * com.google.android.maps (maps.jar) API for Google Maps Skins: QVGA-P, HVGA-L, HVGA (default), QVGA-L, HVGA-P ABIs : armeabi
id: 3 or "android-4" Name: Android 1.6 Type: Platform API level: 4 Revision: 3 Skins: HVGA, QVGA, WVGA800 (default), WVGA854 ABIs : armeabi
id: 4 or "Google Inc.:Google APIs:4" Name: Google APIs Type: Add-On Vendor: Google Inc. Revision: 2 Description: Android + Google APIs Based on Android 1.6 (API level 4) Libraries: * com.google.android.maps (maps.jar) API for Google Maps Skins: WVGA854, HVGA, WVGA800 (default), QVGA ABIs : armeabi
id: 5 or "android-7" Name: Android 2.1 Type: Platform API level: 7 Revision: 3 Skins: HVGA, QVGA, WQVGA400, WQVGA432, WVGA800 (default), WVGA854 ABIs : armeabi
id: 6 or "Google Inc.:Google APIs:7" Name: Google APIs Type: Add-On Vendor: Google Inc. Revision: 1 Description: Android + Google APIs Based on Android 2.1 (API level 7) Libraries: * com.google.android.maps (maps.jar) API for Google Maps Skins: WVGA854, WQVGA400, HVGA, WQVGA432, WVGA800 (default), QVGA ABIs : armeabi
id: 7 or "android-8" Name: Android 2.2 Type: Platform API level: 8 Revision: 3 Skins: HVGA, QVGA, WQVGA400, WQVGA432, WVGA800 (default), WVGA854 ABIs : armeabi
id: 8 or "Google Inc.:Google APIs:8" Name: Google APIs Type: Add-On Vendor: Google Inc. Revision: 2 Description: Android + Google APIs Based on Android 2.2 (API level 8) Libraries: * com.google.android.maps (maps.jar) API for Google Maps Skins: WVGA854, WQVGA400, HVGA, WQVGA432, WVGA800 (default), QVGA ABIs : armeabi
id: 9 or "android-10" Name: Android 2.3.3 Type: Platform API level: 10 Revision: 2 Skins: HVGA, QVGA, WQVGA400, WQVGA432, WVGA800 (default), WVGA854 ABIs : armeabi
id: 10 or "Google Inc.:Google APIs:10" Name: Google APIs Type: Add-On Vendor: Google Inc. Revision: 2 Description: Android + Google APIs Based on Android 2.3.3 (API level 10) Libraries: * com.android.future.usb.accessory (usb.jar) API for USB Accessories * com.google.android.maps (maps.jar) API for Google Maps Skins: WVGA854, WQVGA400, HVGA, WQVGA432, WVGA800 (default), QVGA ABIs : armeabi
id: 11 or "Intel Corporation:Intel Atom x86 System Image:10" Name: Intel Atom x86 System Image Type: Add-On Vendor: Intel Corporation Revision: 1 Description: Intel Atom x86 System Image Based on Android 2.3.3 (API level 10) Skins: WVGA854, WQVGA400, HVGA, WQVGA432, WVGA800 (default), QVGA ABIs : x86
id: 12 or "KYOCERA Corporation:DTS Add-On:10" Name: DTS Add-On Type: Add-On Vendor: KYOCERA Corporation Revision: 1 Description: DTS Add-On Based on Android 2.3.3 (API level 10) Libraries: * com.kyocera.dualscreen (dualscreen.jar) Dual Screen optional platform library Skins: DTS400 (default), WVGA854, WQVGA400, HVGA, DTS800, WQVGA432, WVGA800, QVGA ABIs : armeabi
id: 13 or "android-11" Name: Android 3.0 Type: Platform API level: 11 Revision: 2 Skins: WXGA (default) ABIs : armeabi
id: 14 or "Google Inc.:Google APIs:11" Name: Google APIs Type: Add-On Vendor: Google Inc. Revision: 1 Description: Android + Google APIs Based on Android 3.0 (API level 11) Libraries: * com.google.android.maps (maps.jar) API for Google Maps Skins: WXGA (default) ABIs : armeabi
id: 15 or "android-12" Name: Android 3.1 Type: Platform API level: 12 Revision: 3 Skins: WXGA (default) ABIs : armeabi
id: 16 or "Google Inc.:Google APIs:12" Name: Google APIs Type: Add-On Vendor: Google Inc. Revision: 1 Description: Android + Google APIs Based on Android 3.1 (API level 12) Libraries: * com.android.future.usb.accessory (usb.jar) API for USB Accessories * com.google.android.maps (maps.jar) API for Google Maps Skins: WXGA (default) ABIs : armeabi
id: 17 or "android-13" Name: Android 3.2 Type: Platform API level: 13 Revision: 1 Skins: WXGA (default) ABIs : armeabi
id: 18 or "Google Inc.:Google APIs:13" Name: Google APIs Type: Add-On Vendor: Google Inc. Revision: 1 Description: Android + Google APIs Based on Android 3.2 (API level 13) Libraries: * com.android.future.usb.accessory (usb.jar) API for USB Accessories * com.google.android.maps (maps.jar) API for Google Maps Skins: WXGA (default) ABIs : armeabi
id: 19 or "android-14" Name: Android 4.0 Type: Platform API level: 14 Revision: 3 Skins: HVGA, QVGA, WQVGA400, WQVGA432, WSVGA, WVGA800 (default), WVGA854, WXGA720, WXGA800 ABIs : armeabi-v7a
id: 20 or "Google Inc.:Google APIs:14" Name: Google APIs Type: Add-On Vendor: Google Inc. Revision: 2 Description: Android + Google APIs Based on Android 4.0 (API level 14) Libraries: * com.android.future.usb.accessory (usb.jar) API for USB Accessories * com.google.android.maps (maps.jar) API for Google Maps Skins: WVGA854, WQVGA400, WSVGA, WXGA720, HVGA, WQVGA432, WVGA800 (default), QVGA, WXGA800 ABIs : armeabi-v7a
id: 21 or "android-15" Name: Android 4.0.3 Type: Platform API level: 15 Revision: 3 Skins: HVGA, QVGA, WQVGA400, WQVGA432, WSVGA, WVGA800 (default), WVGA854, WXGA720, WXGA800 ABIs : armeabi-v7a
id: 22 or "Google Inc.:Google APIs:15" Name: Google APIs Type: Add-On Vendor: Google Inc. Revision: 2 Description: Android + Google APIs Based on Android 4.0.3 (API level 15) Libraries: * com.google.android.media.effects (effects.jar) Collection of video effects * com.android.future.usb.accessory (usb.jar) API for USB Accessories * com.google.android.maps (maps.jar) API for Google Maps Skins: WVGA854, WQVGA400, WSVGA, WXGA720, HVGA, WQVGA432, WVGA800 (default), QVGA, WXGA800 ABIs : armeabi-v7a
I'm using Titanium SDK 18.2, Android runtime V8 Android SDK Google APIs Android 2.3.3 with HVGA. It neither works with 2.2 or 4.0.3.
I got a message about a SDK that's too old when I use 2.2. For 2.3.3 and 4.0.3 the message is [INSTALL_FAILED_MISSING_SHARED_LIBRARY] It's about Google Maps that I used:
Package ... requires unavailable shared library com.google.android.maps; failing! Package couldn't be installed in .. .apk
Can someone help me with this? I really don't have a clue where to look.
Many thanks in advance!
Regards, Roy
1 Answer
The android emulator however constantly errors on a missing shared library
Sounds like you need to be targeting an emulator that uses that api. I target API 10 (Android + Google APIs Based on Android 2.3.3 (API level 10)). Just because an API level is installed, doesn't mean thats the level the emulator is targetting.
Under 'Run Configurations' in Titanium Studio, change the 'Android API' to one that matches the level you need. Example:

Your Answer
Think you can help? Login to answer this question!