首页 > 解决方案 > 如何在 Android Studio 中设置兼容库

问题描述

我知道这已经被问过,但似乎无法在以前的问题中找到答案,所以这里。

我在 Unity 中创建了一个项目并将其导出到 Android Studio。我已将最低 API 级别设置为 4.4 KitKat(API 级别 19)。

我添加了:在主清单文件中。构建时出现此错误:

Manifest merger failed : uses-sdk:minSdkVersion 19 cannot be smaller than version 21 declared in library [:UniWebView:] /Users/myname/.gradle/caches/transforms-2/files-2.1/97563e885486a53e4f6658e98b58f094/jetified-UniWebView/AndroidManifest.xml as the library might be using APIs not available in 19
    Suggestion: use a compatible library with a minSdk of at most 19,
        or increase this project's minSdk version to at least 21,
        or use tools:overrideLibrary="com.onevcat.uniwebview" to force usage (may lead to runtime failures)

如何将兼容库设置为 minSdk 19?它需要是 19 而不是 21,因为如果我以 21 发布更新,几乎 20% 的用户将无法玩游戏:-/

Units not compatible with API level 21+ = 2054 (19%)

实际上......一个附带问题......我是否应该害怕在失去用户方面升级API?我有一个使用 API 级别 21 的版本,该版本已准备好发布。

如果我应该小心这个,我该如何解决最初的问题?

希望得到帮助并提前感谢:-)

标签: androidapiandroid-studiounity3dandroid-manifest

解决方案


你基本上有4个选择:

  1. 将您项目的 minSdk 增加到 21 并失去用户
  2. 添加tools:overrideLibrary="com.onevcat.uniwebview"到您的清单的应用程序标签,这可能会导致您的 API 19 用户运行时崩溃(如果您选择此选项,请仔细测试整个事情!!!)
  3. 扔掉图书馆,再找一个。或者编写自己的解决方案
  4. fork 库(如果它是开源的)并尝试将其 minSdk 降低到 19

如果我是你,我会选择选项 3


推荐阅读