语法
<uses-library
android:name="string"
android:required=["true"| "false"] />
父元素
<application>
描述
指定应用必须链接到的共享库。这个元素告诉系统在这个包的class loader中包含这个库的代码。
Android当中的所有包(例如android.app,android.content,android.view和android.widget)都在所有应用都必须链接到的默认库中。然而,有些包(例如maps)是一个不能自动链接的独立库。通过查阅你正使用的包的文档来决定哪个库包含这个包的代码。
这个元素也对特殊设备上应用的安装有影响,同时也对应用在Google Play中的可用性有影响:
安装
如果这个元素存在并且它的android:required属性为true,那么这个PackageManager框架就不让用户安装这个应用,除非这个库在用户的设备上存在。
这个android:required属性将会在下一部分详细描述。
属性
android:name
这个库的名称。这个名称由你使用的这个包的文档提供。例如“android.test.runner”,是一个包含android测试类的包。
android:required
布尔值,表示是否这个应用需要由android:name指定的库。
·“true”:没有这个库这个应用就不会运行。在没有这个库的设备上这个应用将不会允许使用。
·“false”:如果有这个库,那么应用能使用这个库,这个应用需要被设计成没有这个库也能运行。即使这个库不存在,系统也会允许安装这个应用。如果你使用“false”,那么在运行时你就需要响应对这个库可用性的检测。
为了检测这个库,你能使用反射来决定是否这个特定的类是可用的。
默认值是true。
这个属性出自API Level 7
出处
API Level 1
Google Play Filtering
Google Play使用这个在你manifest文件中定义的<uses-library>元素来从没有你请求的库的设备上过滤你的应用。