注意:Google Play 会根据应用清单中声明的 <uses-library>
元素过滤应用,使其不显示在不符合其库要求的设备上。如需详细了解过滤功能,请参阅Google Play 上的过滤器。
- 语法
-
<uses-library android:name="string" android:required=["true" | "false"] />
- 包含于
-
<application>
- 说明
-
指定应用必须链接的共享库。此元素会告知系统将库的代码包含在软件包的类加载器中。
所有
android
软件包(例如android.app
、android.content
、android.view
和android.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
- 另请参阅