注意: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
- 另请参阅: