Android Studio 在使用已弃用的 API 时无法编译

问题描述 投票:0回答:1

我在 Android Studio 上编译和运行我的应用程序时遇到问题。

问题: 我不喜欢使用已弃用的 API。 (来自

gradlew compileDebug --stacktrace
这里有完整的堆栈跟踪

Note: Some input files use or override a deprecated API.
Note: Recompile with -Xlint:deprecation for details.

背景:

  • 我正在使用 PreferenceActivity,它使用
    onPreferenceTreeClick
    addPreferencesFromResource(int)
    ,这两种方法均已弃用。
  • 我正在使用 ABS 和 ViewPager 库,它们似乎也在其代码中使用了已弃用的方法。

问题:

  • 可以将运行配置编辑到可以成功编译的扩展吗尽管已弃用的API?
  • 可以更改/编辑/修改什么以使构建成功编译?

考虑到我计划支持 ICS 之前的设备并且使用已弃用的 APIS 应该不会有问题。

编辑

因此,命令提示符下的编译器指示构建成功,问题是直接从 Android Studio 运行,构建过程失败:

FAILURE: Build failed with an exception.

问题似乎是我不知道如何解决,流行的行是:

UNEXPECTED TOP-LEVEL EXCEPTION:
java.lang.IllegalArgumentException: already added: 

发生在三个不同的地方:

Landroid/support/v4/accessibilityservice/AccessibilityServiceInfoCompat$AccessibilityServiceInfoStubImpl;
Landroid/support/v4/app/ActivityCompatHoneycomb;
Landroid/support/v4/app/LoaderManager;

这里有更多信息:Android Studio 中的完整编译器输出

* What went wrong:
Execution failed for task ':LaPrensa:dexDebug'.
> Running C:\Users\SkullKandy\AppData\Local\Android\android-studio\sdk\build-tools\android-4.2.2\dx.bat failed. 
android intellij-idea gradle deprecated android-studio
1个回答
0
投票

您只需将此代码添加到

build.gradle
(在android部分)

lintOptions {
    abortOnError false
}
© www.soinside.com 2019 - 2024. All rights reserved.