Failed to set up SDK: Error:Module 'app': platform 'Google Inc.:Google APIs:21' not found.
なぜこれが機能しないのかについて、完全な損失で。 SDKを23に更新しようとしましたが、新しい非推奨などをすべて処理する準備ができていないことに気付いたため、Mercurialで古いバージョンに戻しました。私は文字通り他に何もしませんでした、そして復帰はすべてを解決したはずです。残念ながら、アプリを接続してビルドできない。 Android Studioを最初から再インストールしましたが、引き続き同じ警告が表示され、アプリがまったくビルドされません。何が問題なのでしょうか?
これが私のビルドグラドルです:
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
Android Studio SDK Managerの下にあるLaunch Standalone SDK Manager]リンクをクリックするか、コマンドから${Android_SDK_DIR}/tools/Android sdk
を実行して、古いSDKマネージャーインターフェイスを開きます直接開くための行。
次に、必要なSDKバージョンのGoogle APIを見つけてインストールします。
そのパッケージは、何らかの理由で、Android Studio内に隠されています。スタジオでGoogleが削除することを期待しています。現在、SDK 24の1つ(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 embedded Java JRE。それを内部でコンパイルさせるにはAndroid Studio open Android StudioからのProject Structureおよび[〜#〜] jdk [ 〜#〜]システムにインストールしました(コンピュータにOpenJDK/OracleJDKをインストールする必要があります)。
[〜#〜]注[〜#〜]:Android studioで変更を適用します。jre
ディレクトリを選択せず、JDK(jre
を含むフォルダー)を選択してください。
[〜#〜]警告[〜#〜]:この変更はプロジェクトに固有のものではなく、Androidスタジオ自体で、他のプロジェクトで使用されます。
それが失敗したとき、@ Daniel Segatoが説明しているように、Google APIをダウンロードしました。これは正しいことですが、それでも何度も何度もメッセージが表示されました。
これをするまで。モジュールの設定(Ctrl + Alt + Shift + S
またはFile> Project Structure)そして、私のモジュールでは、リストから他の任意のCompile Sdk Versionオプションを変更しました。 Gradleを再同期し、オプションをGoogle API(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 .targetSdkVersion
に29を設定
結果:
Android {
compileSdkVersion 29
buildToolsVersion "29.0.2"
defaultConfig {
applicationId "com.pixelnx.sam.allinone_room"
minSdkVersion 21
targetSdkVersion 29