找不到带有哈希字符串“android-22”的目标

Posted

技术标签:

【中文标题】找不到带有哈希字符串“android-22”的目标【英文标题】:failed to find target with hash string 'android-22' 【发布时间】:2015-09-22 11:14:22 【问题描述】:

我已经用最新版本更新了 android studio,然后在谷歌搜索后我还用 API 18 更新了 Android SDK,但它仍然给出了同样的错误。

【问题讨论】:

将 Grandle.build 文件从 18 更改为 17.may 工作 Gradle 实际上是这样的.... compileSdkVersion 22.... minSdkVersion 10.....targetSdkVersion 22 好吧,抱歉,请到 21 点 它工作得非常好,但我也必须更改 targetSdkVersion 吗?并且依赖项是基于 22 SDk 的,现在它给出了错误... 好的,现在试试 22 希望它有效 【参考方案1】:

只需点击错误中写的链接:

打开 Android SDK 管理器

它会显示对话框,帮助您为项目安装所需的 sdk。

【讨论】:

只安装旧版本的 SDK 并不是真正的解决方案!真正的解决方案是检查所有 gradle 配置文件并将 *version 设置升级到最新安装的设置,例如compileSdkVersion 23 我已经使用 sdk 管理器安装了版本 22,但仍然没有运气(例如,单击链接没有做任何事情)。所以我关闭了,然后重新打开了 android studio 并成功了。 @BenMarten 升级到最新的 sdk 有时可能无济于事。我导入的项目之一是使用一些 Apache Http 类,这些类存在于 sdk v19 中,但在 >21 中已弃用。所以让项目安装所需的sdk,然后如果需要你可以升级它。 谢谢@BenMarten 我已经得到了它们,但是因为我想让项目尽快运行,我确实使用了我发布的解决方案,然后我在谷歌上搜索了 apache http 类的替代方案. 在我的 Mac 上,我通过链接安装了 SDK,然后在完全重启 Android Studio 后运行 Gradle。【参考方案2】:

打开 Android SDK Manager 并使用最新更新:

    Android SDK 工具 Android SDK 构建工具

然后同步、重新构建并重新启动您的项目 build.gradle

的演示代码
   compileSdkVersion 21 // Now 23
   buildToolsVersion '21.1.2' //Now 23.0.1

   defaultConfig
    
    minSdkVersion 15
    targetSdkVersion 19  
     

希望这会有所帮助。

【讨论】:

所以您建议将其更改为 23,在此示例中,假设这是最新的?【参考方案3】:

好的,你一定要试试这个对我有用的人:

    打开 SDK 管理器并安装 SDK 构建工具 22.0.1 同步 gradle 就这些了

【讨论】:

不,只是安装较旧的 SDK 版本并不是真正的解决方案,正如其他地方所评论的那样。【参考方案4】:

我将 build.gradle compileSdkVersion 从 22 修改为 23,将 targetSdkVersion 从 22 修改为 23。

我的 API 级别是 23。我还必须将 API 版本更新到 23。

我必须将我的项目从 Eclipse 导入 Android Studio。它对我有用。

【讨论】:

【参考方案5】:

我有类似的问题。我更新了 android studio 构建工具,但我的项目没有找到“android-22”。我查看了android sdk manager并安装了它。

为了解决这个问题,我卸载了“android-22”并重新安装。

【讨论】:

【参考方案6】:

我创建了一个新的 Cordova 项目,它使用最新的 android 目标 android level 23 创建。当我运行它时。如果我将欲望 android 目标值从 23 更改为 22。并从 Andoid Studio 刷新 Gradle 构建。现在当我运行它时它失败了。我收到以下构建错误。

项目-android /CordovaLib/src/org/apache/cordova/CordovaInterfaceImpl.java 错误:(217, 22) 错误:找不到符号方法requestPermissions(String[],int)

我更改了这些文件中的目标级别。

project.properties AndroidManifest.xml

在 CordovaLib 文件夹中。

project.properties

但是,我还有另一个使用 android 目标级别 22 的项目,每当我运行该项目时,它都会运行。现在我的问题是我们可以在创建项目时指定期望的android级别吗?

【讨论】:

【参考方案7】:

如果尚未安装,我认为您应该从 android sdk 安装 API 18,否则您可以尝试“使缓存无效并重新启动”(查找:文件->使缓存无效并重新启动)。

【讨论】:

【参考方案8】:

改变

compileSdkVersion 18 minSdkVersion 10 targetSdkVersion 18

在您的应用目录/模块中的 build.gradle

或下载最新的 API 版本

【讨论】:

它给出了很多兼容性错误。总之谢谢 :) 永远欢迎。请在更改后构建 build.gradle 文件【参考方案9】:

在 sdk Manager 中下载 android 5.1.1,它对我有用

【讨论】:

【参考方案10】:

打开 project.properties 文件并将带有 target=android-22 的行更改为所需的值。 例如:

target=android-19

【讨论】:

以上是关于找不到带有哈希字符串“android-22”的目标的主要内容,如果未能解决你的问题,请参考以下文章

找不到带有哈希字符串“android-P”的目标

React Native:找不到哈希字符串'android-X'的目标

Android错误:找不到具有哈希字符串android-26和类似的目标

比较相等的字符串在哈希中找不到相同的对象

带有 Cordova 的 Facebook 的 Android 密钥哈希

找不到 -lAFNetworking 的 xcode 库