Failed to set up SDK: Error:Module 'app': platform 'Google Inc.:Google APIs:21' not found
Failed to set up SDK: Error:Module 'app': platform 'Google Inc.:Google APIs:21' not found
Failed to set up SDK: Error:Module 'app': platform 'Google Inc.:Google APIs:21' not found.
完全不知道为什么这不起作用。尝试将我的 SDK 更新到 23 但意识到我不准备处理所有新的弃用等,所以我在 Mercurial 上恢复到旧版本。我几乎没有做任何其他事情,回归应该已经解决了所有问题。不幸的是,我无法连接我的应用程序并构建它。我什至从头开始重新安装了 Android Studio,但我仍然收到相同的警告,我的应用程序根本无法构建。可能出了什么问题?
这是我的构建 gradle:
apply plugin: 'com.android.application'
android {
compileSdkVersion 'Google Inc.:Google APIs:21'
buildToolsVersion '21.1.2'
defaultConfig {
applicationId "com.elgami.customizer"
minSdkVersion 14
targetSdkVersion 21
}
buildTypes {
release {
minifyEnabled false
//runProguard false
//proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.txt'
}
}
}
repositories {
mavenCentral()
maven { url "https://jitpack.io" }
}
dependencies {
compile 'com.ogaclejapan.smarttablayout:library:1.5.0@aar'
compile 'com.github.antonyt:InfiniteViewPager:v1.0.0'
compile 'com.android.support:appcompat-v7:22.2.0'
// recyclerview
compile 'com.android.support:recyclerview-v7:23.1.1'
// google analytics
compile 'com.google.android.gms:play-services-analytics:8.3.0'
// pager sliding strip
compile 'com.astuetz:pagerslidingtabstrip:1.0.1'
// http library (for using beanstream REST)
compile 'org.apache.httpcomponents:httpclient-android:4.3.5.1'
// amaazon S3 uploads
compile 'com.amazonaws:aws-android-sdk-s3:2.1.+'
// paypal purchasing
compile files('libs/PayPalAndroidSDK-2.7.1.jar')
// Module dependency on ParseLoginUI library sources
compile project(':ParseLoginUI')
// Parse libs
compile files('libs/ParseCrashReporting-1.9.2.jar')
compile files('libs/Parse-1.9.1.jar')
compile files('libs/ParseFacebookUtilsV4-1.9.1.jar')
// android support v4
compile files('libs/android-support-v4.jar')
// facebook SDK
compile 'com.facebook.android:facebook-android-sdk:4.1.0'
//butterknife
compile 'com.jakewharton:butterknife:6.1.0'
// Subsampling-scale-image-view (for templating)
//compile 'com.davemorrissey.labs:subsampling-scale-image-view:3.1.4'
compile files('libs/AppRater.jar')
}
您可以使用 compileSdkVersion 21
代替您的。
android {
compileSdkVersion 21
buildToolsVersion '21.1.2'
defaultConfig {
applicationId "com.elgami.customizer"
minSdkVersion 14
targetSdkVersion 21
}
buildTypes {
release {
minifyEnabled false
//runProguard false
//proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.txt'
}
}
}
建议将 Google Inc.:Google APIs:21
替换为 21
的(当前接受的)答案不适合如果您有一些遗留应用程序仍在使用 Google Map v1(例如)。
如果您遇到这种情况,您真的需要针对 Google Inc.:Google APIs:21
或 23 等进行编译...
这里的解决方法是
步骤 1
打开旧的 SDK 管理器界面,点击 Android Studio SDK 管理器下方的 启动独立 SDK 管理器 link 或执行 ${ANDROID_SDK_DIR}/tools/android sdk
从命令行直接打开它。
然后找到您需要的SDK版本的Google APIs并安装:
由于某种原因,该包隐藏在 Android Studio 中,我希望 Google 会在某个时候将其删除。目前 SDK 24 one (Marshmallow) 可用,但 25 (Nougat) 不可用,他们将来可能会添加,也可能不添加。我们将不得不拭目以待。
如果您处于这种情况并且 Google 决定停止提供它,您将不得不使用地图 v2 重写功能。
步骤 2
即使在执行此操作并清理 + gradle 重新同步后,您也会收到来自 Android Studio 的此错误:
Cannot find System Java Compiler. Ensure that you have installed a JDK (not just a JRE) and configured your JAVA_HOME system variable to point to the according directory.
但如果您尝试从命令行执行它,它会编译 (./gradlew assembleDebug
)。
原因显然与 Android Studio 嵌入式 Java JRE 有关。
要使其在 Android Studio 中编译,请从 Android Studio 打开 Project Structure 并为 JDK你安装在你的系统上(你必须在你的电脑上安装OpenJDK / OracleJDK)。
注意:可能需要导航到该位置而不是复制 Android 工作室的路径以进行更改。不要选择 jre
目录,选择 JDK(包含 jre
的文件夹)。
警告:此更改并非特定于项目,但将应用于 Android Studio 本身并用于任何其他项目。
当它对我来说失败时,我下载了 Google API,就像@Daniel Segato 解释的那样,这是正确的做法,但我仍然一次又一次地收到消息再次.
直到我这样做了。我打开了模块的设置(Ctrl + Alt + Shift + S
或 File > Project Structure),对于我的模块,我更改了 Compile Sdk Version 选项为列表中的任何其他选项。我重新同步 gradle,然后将选项改回 Google APIs (API 23)。然后它起作用了! Android Studio 在您在该对话框中更改它之前不识别 SDK 真的非常非常讨厌。但这只发生在我身上一次。其他时候,只需下载正确的 Google API 就足够了!但这很讨厌。
我的问题出在我的 build.gradle 上!我打开的时候是这样的:
android {
compileSdkVersion 'Google Inc.:Google APIs:21'
buildToolsVersion "29.0.2"
defaultConfig {
applicationId "com.pixelnx.sam.allinone_room"
minSdkVersion 21
targetSdkVersion 21
怎么修复的?!
- 删除
'Google Inc.:Google APIs:21'
并写入 29 而不是
2.set 29 对于 targetSdkVersion
结果:
android {
compileSdkVersion 29
buildToolsVersion "29.0.2"
defaultConfig {
applicationId "com.pixelnx.sam.allinone_room"
minSdkVersion 21
targetSdkVersion 29
Failed to set up SDK: Error:Module 'app': platform 'Google Inc.:Google APIs:21' not found.
完全不知道为什么这不起作用。尝试将我的 SDK 更新到 23 但意识到我不准备处理所有新的弃用等,所以我在 Mercurial 上恢复到旧版本。我几乎没有做任何其他事情,回归应该已经解决了所有问题。不幸的是,我无法连接我的应用程序并构建它。我什至从头开始重新安装了 Android Studio,但我仍然收到相同的警告,我的应用程序根本无法构建。可能出了什么问题?
这是我的构建 gradle:
apply plugin: 'com.android.application'
android {
compileSdkVersion 'Google Inc.:Google APIs:21'
buildToolsVersion '21.1.2'
defaultConfig {
applicationId "com.elgami.customizer"
minSdkVersion 14
targetSdkVersion 21
}
buildTypes {
release {
minifyEnabled false
//runProguard false
//proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.txt'
}
}
}
repositories {
mavenCentral()
maven { url "https://jitpack.io" }
}
dependencies {
compile 'com.ogaclejapan.smarttablayout:library:1.5.0@aar'
compile 'com.github.antonyt:InfiniteViewPager:v1.0.0'
compile 'com.android.support:appcompat-v7:22.2.0'
// recyclerview
compile 'com.android.support:recyclerview-v7:23.1.1'
// google analytics
compile 'com.google.android.gms:play-services-analytics:8.3.0'
// pager sliding strip
compile 'com.astuetz:pagerslidingtabstrip:1.0.1'
// http library (for using beanstream REST)
compile 'org.apache.httpcomponents:httpclient-android:4.3.5.1'
// amaazon S3 uploads
compile 'com.amazonaws:aws-android-sdk-s3:2.1.+'
// paypal purchasing
compile files('libs/PayPalAndroidSDK-2.7.1.jar')
// Module dependency on ParseLoginUI library sources
compile project(':ParseLoginUI')
// Parse libs
compile files('libs/ParseCrashReporting-1.9.2.jar')
compile files('libs/Parse-1.9.1.jar')
compile files('libs/ParseFacebookUtilsV4-1.9.1.jar')
// android support v4
compile files('libs/android-support-v4.jar')
// facebook SDK
compile 'com.facebook.android:facebook-android-sdk:4.1.0'
//butterknife
compile 'com.jakewharton:butterknife:6.1.0'
// Subsampling-scale-image-view (for templating)
//compile 'com.davemorrissey.labs:subsampling-scale-image-view:3.1.4'
compile files('libs/AppRater.jar')
}
您可以使用 compileSdkVersion 21
代替您的。
android {
compileSdkVersion 21
buildToolsVersion '21.1.2'
defaultConfig {
applicationId "com.elgami.customizer"
minSdkVersion 14
targetSdkVersion 21
}
buildTypes {
release {
minifyEnabled false
//runProguard false
//proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.txt'
}
}
}
建议将 Google Inc.:Google APIs:21
替换为 21
的(当前接受的)答案不适合如果您有一些遗留应用程序仍在使用 Google Map v1(例如)。
如果您遇到这种情况,您真的需要针对 Google Inc.:Google APIs:21
或 23 等进行编译...
这里的解决方法是
步骤 1
打开旧的 SDK 管理器界面,点击 Android Studio SDK 管理器下方的 启动独立 SDK 管理器 link 或执行 ${ANDROID_SDK_DIR}/tools/android sdk
从命令行直接打开它。
然后找到您需要的SDK版本的Google APIs并安装:
由于某种原因,该包隐藏在 Android Studio 中,我希望 Google 会在某个时候将其删除。目前 SDK 24 one (Marshmallow) 可用,但 25 (Nougat) 不可用,他们将来可能会添加,也可能不添加。我们将不得不拭目以待。
如果您处于这种情况并且 Google 决定停止提供它,您将不得不使用地图 v2 重写功能。
步骤 2
即使在执行此操作并清理 + gradle 重新同步后,您也会收到来自 Android Studio 的此错误:
Cannot find System Java Compiler. Ensure that you have installed a JDK (not just a JRE) and configured your JAVA_HOME system variable to point to the according directory.
但如果您尝试从命令行执行它,它会编译 (./gradlew assembleDebug
)。
原因显然与 Android Studio 嵌入式 Java JRE 有关。 要使其在 Android Studio 中编译,请从 Android Studio 打开 Project Structure 并为 JDK你安装在你的系统上(你必须在你的电脑上安装OpenJDK / OracleJDK)。
注意:可能需要导航到该位置而不是复制 Android 工作室的路径以进行更改。不要选择 jre
目录,选择 JDK(包含 jre
的文件夹)。
警告:此更改并非特定于项目,但将应用于 Android Studio 本身并用于任何其他项目。
当它对我来说失败时,我下载了 Google API,就像@Daniel Segato 解释的那样,这是正确的做法,但我仍然一次又一次地收到消息再次.
直到我这样做了。我打开了模块的设置(Ctrl + Alt + Shift + S
或 File > Project Structure),对于我的模块,我更改了 Compile Sdk Version 选项为列表中的任何其他选项。我重新同步 gradle,然后将选项改回 Google APIs (API 23)。然后它起作用了! Android Studio 在您在该对话框中更改它之前不识别 SDK 真的非常非常讨厌。但这只发生在我身上一次。其他时候,只需下载正确的 Google API 就足够了!但这很讨厌。
我的问题出在我的 build.gradle 上!我打开的时候是这样的:
android {
compileSdkVersion 'Google Inc.:Google APIs:21'
buildToolsVersion "29.0.2"
defaultConfig {
applicationId "com.pixelnx.sam.allinone_room"
minSdkVersion 21
targetSdkVersion 21
怎么修复的?!
- 删除
'Google Inc.:Google APIs:21'
并写入 29 而不是
2.set 29 对于 targetSdkVersion
结果:
android {
compileSdkVersion 29
buildToolsVersion "29.0.2"
defaultConfig {
applicationId "com.pixelnx.sam.allinone_room"
minSdkVersion 21
targetSdkVersion 29