android使用google map api 出现INSTALL_FAILED_MISSING_SHARED_LIBRARY 错误

今天写了一个android关于google map的应用,模拟器上运行一切正常(就是个测试程序),但是在真机上报错无法加载提示INSTALL_FAILED_MISSING_SHARED_LIBRARY。

网上查了不少资料,原因无非两种:

情况一:如果你用模拟器调试程序(网上抄的)

首先检查AndroidManifest.xml,确保已经写了

<uses-library android:name=”com.google.android.maps” />
其次确保你新建工程的时候 Build Target 选择的TargetName不是Android 而是其版本对应的Google APIs。
最后新建模拟器,target同样选择Google APIs。
这样此问题基本解决。你可以正常运行于模拟器上了。如果运行之后地图无法显示,而是现实灰色表格。那么说明你的

android:apiKey 不对。重新注册apiKey(具体方法看api或者去论坛,这里不再赘述)。


情况二:真机调试(也是抄的做了一点整理)

当你在测试机上运行没有问题时说明你的工程和配置文件都没有问题,那么问题出在机器上。

原因是system/framework下缺少文件com.google.android.maps.jar 包。解决方法如下:

1、从模拟器的DDMS中导出com.google.android.maps.jar

(此处参考http://android.tgbus.com/Android/androidnews/200901/173949.shtml

各个系统如何进入adb shell 参考:悲剧刚才那个网页被我关了

2、进入设备shell: adb -d shell (记得 -d)

3、获取/system读写权限

mount -o remount,rw rootfs /system/

4、将步骤一中导出的包导入到机器中

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

5、给这个包增加权限

把真机中/etc/permissions/platform.xml文件取出来编辑

adb pull /etc/permissions/platform.xml

在文件最后增加

<library name="com.google.android.maps" file="/system/framework/com.google.android.maps.jar"/>

再把这个文件push回去真机中

adb push platform.xml /etc/permissions/


重启手机应该就好了

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值