导语:Google Play 利用 Manifest 文件中声明的 < uses-library > 元素进行过滤, 使得没法满足利用程序对链接库需求的装备就没法安装该利用程序。关于过滤机制的详细信息,请参阅文章Google Play 过滤器
语法:
<uses-library
android:name="string"
android:required=["true" | "false"] />
包括于:
< application >
说明:
定义利用程序必须链接的公共库。本元素把程序包的类装载器中需要包括的库代码通知系统。
所有的 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”。