<uses-library>

注意:Google Play 会根据应用清单中声明的 <uses-library> 元素过滤应用,使其不显示在不符合其库要求的设备上。如需详细了解过滤功能,请参阅Google Play 上的过滤器

语法
<uses-library
  android:name="string"
  android:required=["true" | "false"] />
包含于
<application>
说明

指定应用必须链接的共享库。此元素会告知系统将库的代码包含在软件包的类加载器中。

所有 android 软件包(例如 android.appandroid.contentandroid.viewandroid.widget)都位于默认库中,所有应用都会自动链接到这些默认库。不过,某些软件包(例如 maps)位于单独的库中,不会自动链接。请查阅您使用的软件包的文档,以确定哪个库包含软件包代码。

<uses-library> 标签的顺序非常重要。它会影响应用加载时的类查找和解析顺序。某些库可能包含重复的类,在这种情况下,排在前面的库将优先。

此元素还会影响应用在特定设备上的安装以及应用在 Google Play 上的可用性。如果此元素存在,且其 android:required 属性设置为 "true",则 PackageManager 框架将不允许用户安装该应用,除非用户的设备上存在该库。

android:required 属性在下一节中详细介绍。

属性
android:name
库的名称。该名称由您使用的软件包的文档提供。例如,"android.test.runner" 是一个包含 Android 测试类的软件包。
android:required
布尔值,指示应用是否需要由 android:name 指定的库。
  • "true":应用无法在没有此库的情况下运行。系统不允许在没有此库的设备上安装该应用。
  • "false":如果库存在,应用会使用该库,但如果需要,应用也能在没有它的情况下运行。即使库不存在,系统也允许安装该应用。如果您使用 "false",您需负责在运行时检查库是否可用。

    如需检查库是否存在,您可以使用反射来确定某个类是否可用。

默认值为 "true"

引入时间:API 级别 7。

引入时间
API 级别 1
另请参阅