真机 解决方法 unavailable shared library com.google.android.maps

1.安装google maps api的应用是,提示安装不上,类似下面错误:

http://developer.appcelerator.com/question/89531/failure-installfailedmissingsharedlibrary-on-new-kitchensink-android-why

When I try and run the new KitchenSink for 1.5.0 I get the following error:

[ERROR] Failed installing com.appcelerator.kitchensink: pkg: /data/local/tmp/app.apk[TRACE] Failure [INSTALL_FAILED_MISSING_SHARED_LIBRARY]

Further up I found this:

[TRACE] E/PackageManager( 54): Package com.appcelerator.kitchensink requires unavailable shared library com.google.android.maps; failing!

参考:

真机缺少com.google.android.maps.jar解决方法:



原文:http://kb.cnblogs.com/a/1652230

解决方法:

a.针对模拟器:

参考:http://stackoverflow.com/questions/2283398/shared-library-missing-in-android-how

To get past INSTALL_FAILED_MISSING_SHARED_LIBRARY error with Google Maps for Android:

1) Install Google map APIs. This can be done in Eclispe Windows/Android SDK and AVD Manager -> Available Packages -> Third Party Add-ons -> Google Inc. -> Google APIs by Google Inc., Android API X

2) From command line create new AVD. This can be done by listing targets (android list targets), then android create avd -n new_avd_api_233 -t "Google Inc.:Google APIs:X"

3) Then create AVD in Eclipse Windows/Android SDK and AVD Manager -> New... -> (Name: new_avd_X, Target: Google APIs (Google Inc.) - API Level X)

4) Create Android Project in Eclipse File/New/Android Project and select Google APIs Build Target.

5) add <uses-library android:name="com.google.android.maps" /> between <application> </application> tags.

5) Run Project as Android Application.

b.针对真机:

参考:http://blog.ywxyn.com/index.php/archives/category/dao/software/android

  大体分两步:第一要有权限复制文件到相关系统目录,如果没有权限,请参考我另一篇博文,注意不同手机具体方法可能不同

第二步,把下面两个文件放在对应系统目录下:
com.google.android.maps.jar ==> system/framework/
com.google.android.maps.xml ==> system/etc/permissions/

【上面文件,可以从模拟器中提取,命令如下:

adb pull  /system/framework/com.google.android.maps.jar D:\com.google.android.maps.jar
adb pull /system/etc/permissions/com.google.android.maps.xml D:\com.google.android.maps.xml

命令是:chmod777 /system/framework

chmod 777 /system/etc/permissions

然后使用adb命令复制文件,命令是:

adb -d push  D:\com.google.android.maps.jar /system/framework/com.google.android.maps.jar 
adb -d push D:\com.google.android.maps.xml /system/etc/permissions/com.google.android.maps.xml

权限改回来的命令是:

chmod755 /system/framework

chmod 755 /system/etc/permissions


如果,文件复制后,与其它文件属主,组不同,可用下面命令修改

chown root.root com.google.android.maps.jar

system/etc/permissions/下com.google.android.maps.xml内容如下

  1. <permissions>
  2.     <library name="com.google.android.maps"
  3.             file="/system/framework/com.google.android.maps.jar" />
  4. </permissions>
第三步,关机重启,OK。


本人还参考过:

http://blog.csdn.net/harry_helei/article/details/7282848

http://blog.163.com/gobby_1110/blog/static/29281715201010146177879/





你可能感兴趣的:(eclipse,android,manager,Google,library,permissions)