INSTALL_FAILED_MISSING_SHARED_LIBRARY เกิดข้อผิดพลาดใน Android


87

เมื่อฉันพยายามเรียกใช้แอปพลิเคชัน Android ที่ใช้ Google API ฉันได้รับข้อผิดพลาดต่อไปนี้

[2009-07-11 11:46:43 - FirstMapView] ข้อผิดพลาดในการติดตั้ง: INSTALL_FAILED_MISSING_SHARED_LIBRARY
[2009-07-11 11:46:43 - FirstMapView] โปรดตรวจสอบเอาต์พุต logcat สำหรับรายละเอียดเพิ่มเติม
[2009-07-11 11:46:44 - FirstMapView] ยกเลิกการเปิดตัวแล้ว!

ใครสามารถช่วยฉันแก้ไขข้อผิดพลาดนี้

คำตอบ:


92

หากต้องการรับINSTALL_FAILED_MISSING_SHARED_LIBRARYข้อผิดพลาดในอดีตกับ Google แผนที่สำหรับ Android:

  1. ติดตั้ง Google map API สามารถทำได้ใน Eclipse Windows / Android SDK และ AVD Manager -> แพ็คเกจที่มี -> โปรแกรมเสริมของบุคคลที่สาม -> Google Inc. -> Google APIs โดย Google Inc. , Android API X

  2. จากบรรทัดคำสั่งสร้าง AVD ใหม่ ซึ่งสามารถทำได้โดยระบุเป้าหมาย (เป้าหมายรายการของ Android) จากนั้น Android จะสร้าง avd -n new_avd_api_233 -t "Google Inc.:Google APIs: X"

  3. จากนั้นสร้าง AVD (อุปกรณ์เสมือน Android) ใน Eclipse Windows / Android SDK และ AVD Manager -> ใหม่ ... -> (ชื่อ: new_avd_X, เป้าหมาย: Google APIs (Google Inc. ) - ระดับ API X)

    IMPORTANT : คุณต้องสร้าง AVD ของคุณด้วย Target as Google APIs (Google Inc. ) มิฉะนั้นจะล้มเหลวอีกครั้ง

  4. สร้างโครงการ Android ในไฟล์ Eclipse / โครงการใหม่ / Android และเลือก Google APIs Build Target

  5. เพิ่ม <use-library android: name = "com.google.android.maps" /> ระหว่างแท็ก <application> </application>

  6. เรียกใช้ Project เป็นแอปพลิเคชัน Android

หากข้อผิดพลาดยังคงมีอยู่แสดงว่าคุณยังคงมีปัญหาหากใช้งานได้ข้อผิดพลาดนี้จะอยู่เบื้องหลังคุณตลอดไป


20
มีใครช่วยอธิบายได้ไหมว่าการรันแอปให้ประสบความสำเร็จบนโปรแกรมจำลองที่เปิดใช้งาน Google API จะช่วยแก้ปัญหาไลบรารีที่หายไปในอุปกรณ์จริงได้อย่างไร ฉันไม่เห็นการเชื่อมต่อ
mcmlxxxvi

ฉันได้รับข้อผิดพลาดนี้สำหรับ com.google.android.gms.auth ... ขั้นตอนข้างต้นดูเหมือนจะไม่ถูกต้องสำหรับข้อผิดพลาดนี้
sheetal_158

ไม่มีไลบรารีหรือขาดหายไปในกรณีของฉัน ต้องติดตั้งทั้งหมด แต่ฉันมีปัญหาในการติดตั้งแอป. apk ลงในโปรแกรมจำลอง ล้มเหลวด้วยข้อผิดพลาดในการติดตั้งที่ไม่รู้จัก ปัญหาทั้งหมดนี้จะเป็นอย่างไร ... ?
bonCodigo

@bonCodigo คุณมีวิธีแก้ปัญหาหรือไม่ฉันได้รับปัญหาเดียวกัน
อนุ

4
คำตอบนี้ไม่มีประโยชน์ สำหรับ AVD เท่านั้น
Siddharth

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

หากต้องการเป็นจริงคุณอาจต้องเปลี่ยน


2
นี่ควรเป็นคำตอบที่ถูกต้องแม้ว่าจะผ่านไป 5 ปีแล้วก็ตาม
WrightsCS

ฉันควรใส่รหัสนี้ไว้ที่ไหน
Robin Svensson

13

ในกรณีของฉันคือแอปเริ่มต้นเป็นอุปกรณ์เป้าหมายที่สวมใส่ได้

ฉันลบการอ้างอิงถึง Wearable ในไฟล์ Manifestของฉันและปัญหาได้รับการแก้ไขแล้ว

<uses-library android:name="com.google.android.wearable" android:required="true" />


7

คุณสามารถแก้ได้โดยทำงานบนโปรแกรมจำลอง Google API

ในการทำงานบนโปรแกรมจำลอง Google API ให้เปิด Android SDK & AVD Manager> แพ็คเกจที่มี> Google Repos> เลือกระดับ Google API ที่คุณต้องการทดสอบ

หลังจากติดตั้งแล้วให้เพิ่มเป็นอุปกรณ์เสมือนและเรียกใช้


4
  1. เปิดคราส
  2. ไปที่:

    โครงการ> คุณสมบัติ> Android> เลือก: Google APIs Android 4.0.3

  3. คลิกไอคอน:

    Android Virtual Device Manager> Edit> Slect box ใน Tabget> Google APIs APIsLevel15
    และเลือก Built-in: is WQVGA400> Edit AVD> Start


2

ฉันได้รับข้อผิดพลาดเดียวกันนี้เมื่อติดตั้งลงในอุปกรณ์จริง ข้อมูลเพิ่มเติมและวิธีแก้ปัญหาในการโหลดไลบรารีที่หายไปลงในอุปกรณ์สามารถพบได้ที่ไซต์ต่อไปนี้:

แก้ไขข้อผิดพลาด INSTALL_FAILED_MISSING_SHARED_LIBRARY

ในการตั้งค่าให้ถูกต้องมีไฟล์สำคัญ 2 ไฟล์ที่ต้องคัดลอกไปยังระบบ:

com.google.android.maps.xml

com.google.android.maps.jar

ไฟล์เหล่านี้อยู่ในชุดแอป Google เหล่านี้:

http://android.d3xt3...0120-signed.zip

http://goo-inside.me...0120-signed.zip

http://android.local...0120-signed.zip

ลิงก์เหล่านี้ใช้ไม่ได้อีกต่อไป แต่คุณสามารถค้นหาไฟล์ใน android sdk ได้หากคุณมี Google Maps API v1

หลังจากคลายซิปไฟล์ใด ๆ เหล่านี้คุณต้องการคัดลอกไฟล์ไปยังระบบของคุณเช่น - ah-so:

adb remount

adb push system/etc/permissions/com.google.android.maps.xml /system/etc/permissions

adb push system/framework/com.google.android.maps.jar /system/framework

adb reboot

1

ฉันกำลังพัฒนาแอปเป็นเวอร์ชัน 2.2 เวอร์ชัน API จะในวันที่ 8 ... มีข้อผิดพลาดเดียวกันและข้อผิดพลาดบอกฉันว่าเป็น Google Maps API สิ่งที่เราทำคือเปลี่ยน ADV สำหรับโครงการ API 2.2 ของฉันและสำหรับ API

สิ่งนี้ใช้ได้ผลสำหรับฉันและพบว่าจำเป็นต้องใช้ไลบรารี API


ขอบคุณสำหรับ ans แต่ฉันต้องการรันในอุปกรณ์ 4.4.4 ดังนั้น api ใดที่ต้องการของ google maps โปรดตอบฉันด้วย
tej shah

1

สิ่งนี้อาจเกิดขึ้นเนื่องจากสาเหตุต่อไปนี้ -

  1. ในไฟล์ Manifest ของคุณให้เลือก "<ใช้" เช่นสวมใส่ได้ทีวีแท็บเล็ต ฯลฯ
  2. มีความจำเป็นในการติดตั้งโค้ดบางอย่างใน BUILD.GRADLE ซึ่งคุณอาจลบผิดพลาด

ดังนั้นการลบการติดตั้งหรือเพิ่มเข้าไปก็สามารถลบข้อผิดพลาดนี้ได้ คุณสามารถลบรหัส "ใช้" ในไฟล์รายการของ Android

ตัวอย่าง:

  1. นี่เสียเวลาไป 1 ชั่วโมงทำให้ฉันเพิ่มคลาสประเภทสวมใส่ได้โดยไม่ตั้งใจแน่นอนฉันลบสิ่งนั้นโดยใช้ refractor อย่างปลอดภัย แต่ Didi ไม่ได้ทำการเปลี่ยนแปลงกับไฟล์ manifest

  2. ฉันใช้รหัส firebase crashlytics ในโปรเจ็กต์ java ของฉัน แต่ฉันลบผิดใน buld.gradle ด้านล่าง: การติดตั้ง 'com.google.firebase: firebase-crashlytics: 17.1.1'

โซลูชันอยู่ใน BUILD> GRADLE หรือใน AndroidManifest.xml ส่วนใหญ่


0

สิ่งนี้เกิดขึ้นเมื่อคุณพยายามเรียกใช้แอปพลิเคชันบนโปรแกรมจำลอง Emulator ไม่มีไลบรารีแผนที่ Google ที่ใช้ร่วมกัน


0

อีกวิธีในการแก้ปัญหานี้คือการติดตั้ง libs ที่ขาดหายไปที่คุณต้องการ

คุณสามารถดาวน์โหลด libs และดูวิธีการติดตั้งที่นี่


0

เมื่อลองใช้วิธีแก้ปัญหาเหล่านี้
ฉันแก้ไขด้วย:
สร้างอุปกรณ์เสมือนใหม่ (เลือก Google APIs (Google Inc) -API ระดับ 15 แทนที่ android 4.0.3-APILevel 15) จากนั้นเรียกใช้อีกครั้ง มันแก้ไขได้

ฉันคิดว่าเป็นเพราะอุปกรณ์ไม่มี google apis ~

IDE: ระบบปฏิบัติการ android-studio: ubuntu 12.04

โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.