【问题标题】:How can I change the defined API version of an Android app?如何更改 Android 应用程序的定义 API 版本?
【发布时间】:2016-06-11 10:29:49
【问题描述】:

我是 Android 开发的新手,在尝试构建从 Internet 下载的示例项目时遇到以下问题。

当我尝试构建它时,我收到以下错误消息:

Error:Cause: failed to find target with hash string 'android-18' in: C:\Users\Andrea\AppData\Local\Android\sdk
<a href="install.android.platform">Install missing platform(s) and sync project</a>

于是我在网上搜索,发现了这个 SO 链接:Android studio - Failed to find target android-18

好的,所以我进入 Tools > Android > SDK Manager,事实上我已经安装了 Android 6 对应于 API 级别 23 但没有Android 4.3 对应于 API 级别 18

那是什么意思?这意味着我安装了不同版本的Android框架?(是SDK作为框架还是什么?)

那么,我可以在 Android Studio 上安装不同版本的 SDK 吗?

我认为 API 级别必须以某种方式定义到下载的应用程序中。如何指定此应用程序不使用 API level 18 而是使用已安装的 API level 23 ?我认为这不是问题,因为我安装了一个必须支持最旧版本的所有内容的最新版本,是吗?

【问题讨论】:

  • 您下载的任何东西使用API​​ 18可能是有原因的,因此解决方案是下载API 18然后查看代码是否可以运行。稍后您可以查看有关更新 API 版本的信息。

标签: android android-sdk-manager


【解决方案1】:

我会为您解释一下问题,然后为您提供解决方案。

您正面临这个问题,因为您的项目是以 API 级别 18 为目标来编译该项目。所以您必须安装 API 18 SDK 来编译项目。

这就是 IDE 抱怨的原因,

Install missing platform(s) and sync project

SDK 不是框架。 Android 框架完全一样,但随着不同的 API 级别,新的更新被推送到 SDK,最新的是 API 23,Marshmallow。

您不应下载较旧的 SDK 来编译项目。

始终尝试使用可用的最新 SDK。因此,只需转到您的 build.gradle 文件或 AndroidManifest.xml 文件并将 compileSdkVersion 更改为 23。

【讨论】:

    【解决方案2】:
    1. 您可以将 build.gradle 中的 compileSdkVersion 版本更改为 23 或本地计算机中的任何版本

    2. 您可以从 SDK 管理器获取API Level 18

    【讨论】:

      【解决方案3】:

      我进入工具 > Android > SDK 管理器,事实上我已经安装了对应 API 级别 23 的 Android 6,但没有安装对应 API 级别 18 的 Android 4.3。

      那是什么意思?这意味着我安装了不同版本的Android框架?

      是的,您有更新版本的 SDK。

      我可以在 Android Studio 上安装不同版本的 SDK 吗?

      是的,这就是 SDK 管理器的设计目的

      我认为 API 级别必须以某种方式定义到下载的应用程序中。如何指定此应用程序不使用 API 级别 18,而是使用已安装的 API 级别 23?

      已定义。检查应用程序模块中的AndroidManifest.xmlbuild.gradle 文件(不在项目根目录中)。您应该会看到minSdktargetSdk 和/或compileSdk 的某种组合,后面有一个数字。由于您收到有关缺少 SDK 18 的错误,因此该数字将为 18

      我认为这不是问题,因为我安装了一个必须支持最旧版本的所有内容的最新版本,是吗?

      支持库独立于核心 SDK。您无法在版本低于 23 的设备上运行 SDK 23 特定代码,因此,为了安全起见,建议您先下载 SDK 18,然后运行它,然后尝试更新 compileSdkVersion 编号。

      【讨论】:

        猜你喜欢
        • 2020-11-19
        • 2021-03-06
        • 1970-01-01
        • 1970-01-01
        • 2020-04-06
        • 1970-01-01
        • 2013-06-26
        • 2018-07-01
        • 2016-05-13
        相关资源
        最近更新 更多