10

我在一个 android 应用程序中使用 twitter4j 来使用 twitter API。一切正常,我对图书馆没有任何问题。今天我运行 lint 并在 twitter4j-core-3.0.3.jar 中遇到 lint 错误。我无法控制这个第三方库,所以应该怎么做。

lint 错误如下:

库中的包引用无效;不包含在 Android 中:javax.management.openmbean。引用自 twitter4j.management.APIStatisticsOpenMBean。

问题: 查找对 Android 不支持的 API 的 API 访问

标识: 无效包

此检查会扫描库以查找对 Android 中未包含的 API 的调用。

创建 Android 项目时,会设置类路径,以便您只能访问 Android 中包含的 API 包中的类。但是,如果您将其他项目添加到您的 libs/ 文件夹,则无法保证这些 .jar 文件是使用特定于 Android 的类路径构建的,特别是它们可能正在访问不受支持的 API,例如 java.applet。

此检查扫描库 jar 并查找对未包含在 Android 中的 API 包的引用并标记这些。如果您的代码调用最终引用不受支持的包的库类之一,这只是一个错误。

4

2 回答 2

10

如果你从命令行运行 Lint,你可以在你的项目目录中提供一个lint.xml并使用以下配置来忽略 twitter4j jar 文件。

<?xml version="1.0" encoding="UTF-8"?>
<lint>
    <issue id="InvalidPackage">
        <ignore path="libs/twitter4j-core-3.0.5.jar" />
    </issue>
</lint>

可以在http://developer.android.com/tools/help/lint.html找到 Lint 的命令行选项

于 2014-01-31T01:06:42.477 回答
4

目前我刚刚将 lint 配置为忽略错误并将其显示为警告:在 eclipse 中执行此操作转到 Preferences-> Android -> Lint Error Checking,并将“InvalidPackage”的严重性更改为“Warning”或“Information” ”或“忽略”。

在此处输入图像描述

于 2013-05-03T11:53:57.460 回答