Android Manifest中的<uses-library> </uses-library>

时间:2012-09-28 18:18:35

标签: android android-manifest andengine

我是Android的新手,我需要有关此问题的帮助。我正在使用Eclipse开发游戏。在我的项目中,我将AndEngine和AndEngine增强现实作为库添加。我正在我的Android设备上测试项目,每次点击使用AR类的文本时,它都会强制关闭。有人告诉我在我的Android Manifest文件中注册AndEngine。我已经检查了它并使用了<uses-library />。现在,我将这两行放在我的清单中:

<uses-library android:name="org.andengine.extension.augmentedreality" 
           android:required="true"/> 
       <uses-library android:name="org.andengine" 
            android:required="true"/>

但是收到此错误消息:Installation error: INSTALL_FAILED_MISSING_SHARED_LIBRARY

当我注释掉那些<uses-library />行时,我可以运行应用程序,但是当点击指向AR类的文本时它强制关闭。使用它有什么问题吗?或者更好的方式呢?请以易于理解的新手方式发布您的所有建议。谢谢!

3 个答案:

答案 0 :(得分:5)

<uses-library>并不意味着在您的应用程序中包含库。它用于根据设备上已有的库(如地图)的可用性限制Google Play中的应用可用性。 AndEngine是一个库项目,所以通过Ant,Maven或你使用的任何IDE将它包含在你的构建中。

如果您不熟悉图书馆项目的链接:

http://www.vogella.com/blog/2011/03/03/android-library-projects/

答案 1 :(得分:1)

在res文件夹中创建一个libs文件夹,并将AndEngine jar放入其中。设置jar的类路径。

答案 2 :(得分:1)

  

如果此元素存在且设置了其android:required属性   为true,PackageManager框架不允许用户安装   应用程序,除非用户的设备上存在库。

<uses-library> - 指定应用程序必须链接的共享库。该元素告诉系统将库的代码包含在包的类加载器中。