Android 中的 INSTALL_FAILED_MISSING_SHARED_LIBRARY 错误
Posted
技术标签:
【中文标题】Android 中的 INSTALL_FAILED_MISSING_SHARED_LIBRARY 错误【英文标题】:INSTALL_FAILED_MISSING_SHARED_LIBRARY error in Android 【发布时间】:2010-11-09 22:19:17 【问题描述】:当我尝试运行使用 Google API 的 android 应用程序时,我收到以下错误
[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] 发射取消!
谁能帮我解决这个错误?
【问题讨论】:
【参考方案1】:要克服 Android 版 Google 地图的 INSTALL_FAILED_MISSING_SHARED_LIBRARY
错误:
安装 Google 地图 API。这可以在 Eclipse Windows/Android SDK 和 AVD Manager -> 可用软件包 -> 第三方插件 -> Google Inc. -> Google Inc. 的 Google APIs,Android API X
中完成从命令行创建新的 AVD。这可以通过列出来完成 目标(android 列表目标),然后 android create avd -n new_avd_api_233 -t "Google Inc.:Google APIs:X"
然后在Eclipse Windows/Android中创建AVD(Android Virtual Device) SDK 和 AVD 管理器 -> 新建... ->(名称:new_avd_X,目标:Google API (Google Inc.) - API 级别 X)
IMPORTANT
:您必须使用 Target 作为 Google API (Google Inc.) 创建您的 AVD,否则它将再次失败。
在 Eclipse 文件/新建/Android 项目中创建 Android 项目和 选择 Google API 构建目标。
添加
将项目作为 Android 应用程序运行。
如果错误仍然存在,那么你仍然有问题,如果它有效,那么这个错误永远在你身后。
【讨论】:
有人能解释一下如何在支持 Google API 的模拟器上成功运行应用程序将解决 real 设备上缺少库的问题吗?我看不到连接。 我收到 com.google.android.gms.auth 的此错误...上述步骤似乎不适用于此错误 在我的情况下没有库或此类缺失。所有要求都已安装。然而,我在将 .apk 应用程序安装到模拟器时遇到问题。它失败并出现未知的安装错误。这整个问题可能是什么......? @bonCodigo 你有什么解决办法吗?我也遇到了同样的问题。 这个答案其实没用。仅适用于 AVD。【参考方案2】:在我的例子中,应用默认为Wearable目标设备。
我在 Manifest 中删除了对 Wearable 的引用,问题就解决了。
<uses-library android:name="com.google.android.wearable" android:required="true" />
【讨论】:
这解决了我的问题。有没有办法防止它在创建新活动时默认为可穿戴设备? 谢谢你,你是一个救生员。我在挠头……非常感谢……【参考方案3】:<uses-library
android:name="com.google.android.maps"
android:required="false" />
如果要求是真的,也许你需要改变
【讨论】:
这应该是正确的答案,即使 5 年后也是如此。 此代码应添加到清单中【参考方案4】:您可以在 Google API 模拟器上运行解决它。
要在 Google API 模拟器上运行,请打开您的 Android SDK 和 AVD 管理器 > 可用软件包 > Google Repos > 选择您需要测试的那些 Google API 级别。
安装后,将它们添加为虚拟设备并运行。
【讨论】:
【参考方案5】:-
打开日食
转到:
项目>属性>Android> 选择:google APIs Android 4.0.3
点击图标:
Android 虚拟设备管理器>编辑> Tabget 中的选择框>Google APIs APIsLevel15 并选择内置:是 WQVGA400 > 编辑 AVD > 开始
【讨论】:
【参考方案6】://检查你的清单
<uses-library
android:name="com.google.android.wearable"
android:required="true" />
//这是为我添加的,同时错误地添加了导致问题的新活动。
【讨论】:
【参考方案7】:我在安装到实际设备时遇到了同样的错误。可以在以下站点找到更多信息和将缺少的库加载到设备的解决方案:
Fixing the INSTALL_FAILED_MISSING_SHARED_LIBRARY Error
要正确设置,需要将 2 个密钥文件复制到系统中:
com.google.android.maps.xml
com.google.android.maps.jar
这些文件位于以下任何谷歌应用包中:
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
解压这些文件后,您想将这些文件复制到您的系统中,例如:
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
【讨论】:
【参考方案8】:这可能是由于以下原因-
-
在清单文件中检查“
BUILD.GRADLE 中需要一些代码实现,您可能误删了这些代码
因此,通过删除实现或添加它们可以消除此错误。 您可以删除 android manifest 文件中的“uses”代码。
例子:
这浪费了我1个小时,因为我错误地添加了一类可穿戴类型,当然,我安全地删除了使用折射器但滴滴没有对清单文件进行更改。
我在我的 java 项目中使用了 firebase crashlytics 代码,但我在 buld.gradle 中错误地删除了该代码。 在下面: 实施 'com.google.firebase:firebase-crashlytics:17.1.1'
解决方案主要在 BUILD>GRADLE 或 AndroidManifest.xml 中。
【讨论】:
【参考方案9】:我正在开发一个 2.2 版的应用程序,API 版本将在第 8 版......有同样的错误,错误告诉我这是谷歌地图 API,我们所做的只是改变我的项目 API 2.2 的 ADV 和也适用于 API。
这对我有用,并找到了所需的库 API。
【讨论】:
感谢您的回答。但我想在 4.4.4 设备中运行。所以谷歌地图想要哪个api。请回答我【参考方案10】:当您尝试在模拟器上运行应用程序时会发生这种情况。模拟器没有共享的谷歌地图库。
【讨论】:
【参考方案11】:解决此问题的另一种方法是安装所需的缺失库。
您可以下载这些库并查看如何安装here。
【讨论】:
【参考方案12】:当我尝试这些解决方案时。 我解决了: 创建一个新的虚拟设备(选择 Google APIs(Google Inc)-API Level 15 替换 android 4.0.3-APILevel 15) 然后再次运行。解决了。
我认为是因为设备没有google apis~
IDE:安卓工作室 操作系统:ubuntu 12.04
【讨论】:
【参考方案13】:通常,这意味着应用在不支持某些必需库(可能与Android版本或硬件有关)的设备(包括虚拟设备)上安装/调试。
检查manifest
中的元素<uses-library>
是否设备支持所有库。在我的例子中,它是 EDMK(Zebra 条码扫描器库)。
注意:Google Play 使用您的应用清单中声明的 <uses-library>
元素从不满足其库要求的设备中过滤您的应用。
选项 a)
如果库是意外添加的(您的应用中没有使用它的特定类),请删除元素 <uses-library>
。
选项 b)
如果库是可选的,请将android:required="false"
添加到<uses-library>
。如果某些部分需要此库,您可能需要在代码中添加验证。
选项 c)
如果需要该库,请使用其他设备或创建支持该库的虚拟设备 (AVD)。
【讨论】:
【参考方案14】:而不是删除
在允许的情况下,只需设置
android:required="true" 为假。
【讨论】:
以上是关于Android 中的 INSTALL_FAILED_MISSING_SHARED_LIBRARY 错误的主要内容,如果未能解决你的问题,请参考以下文章
android中的java.lang.OutOfMemoryError,同时从android中的画廊获取图像
android 6中的android webview youtube视频中的全屏模式问题
android权限--android开发中的权限及含义(上)
FrameLayout 中的 'android:foreground' 和 'android:foregroundGravity' 如何影响其外观?