ハッシュ文字列android-23のターゲットが見つかりませんでした


94

git://github.com/osmdroid/osmdroidからOpenStreetMapViewをビルドしようとすると、次のエラーが発生します。

failed to find target with hash string android-23: D:\Users\myusername\AppData\Local\Android

どうすれば修正できますか?これと同様の以前の質問は、android 23がインストールされていないことを確認することを提案していますが、私の場合はインストールされています。

以下は関連情報です:

ANDROID_HOMEは D:\Users\myusername\AppData\Local\Android\sdk

D:\Users\myusername\AppData\Local\Android\sdk\platforms\ \ android-23 \ディレクトリ(およびandroid-19、android-21、android-22、android-MNC)が含まれています

build.gradle

apply plugin: 'com.android.application'

android {
    compileSdkVersion 23
    buildToolsVersion "23.0.1"

    defaultConfig {
        applicationId "org.osmdroid.example"
        minSdkVersion 8
        targetSdkVersion 23
        versionCode 16
        versionName "4.4-SNAPSHOT"
    }
    buildTypes {
        release {
            minifyEnabled false
            proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
        }
    }
    packagingOptions {
        exclude 'META-INF/LICENSE'
        exclude 'META-INF/DEPENDENCIES'
        exclude 'META-INF/NOTICE'

    }
    lintOptions {
        abortOnError false
    }
}


dependencies {
    compile 'android.support:compatibility-v4:23+'
    compile project(':osmdroid-android')
    //compile 'org.osmdroid:osmdroid-third-party:4.4-SNAPSHOT'
}

targetSdkVersionとcompileSdkVersionを22に変更してみました。これにより、エラーメッセージが「android-23」ではなく「android-22」に変更されます。

SDKマネージャー: ここに画像の説明を入力してください

回答:


79

私の場合、キャッシュをクリアすることはできませんでした。

SDK Managerで、[ パッケージの説明を表示]のチェックボックスをオンにしてください。次に、インストールするバージョンの「Google API」も選択する必要があります。

それをインストールすれば、大丈夫です


2
これはうまくいきました。SDKマネージャーの終了後にビルドツールをダウンロードする必要がありましたが、.gradleフォルダーや無効化キャッシュを削除する必要はありませんでした。
Bill Mote

ありがとうございました!うまくいきました。
carlodonz


18

答えこの質問

Gradleは時々バカになり、キャッシュを一掃することが私が見つけた唯一のソリューションです。ユーザーのホームフォルダーの下に非表示の.gradleフォルダーがあり、チェックアウトの場所がosmdroidである場所には別のフォルダーがあります。


3
私はフォルダーを消去し、再試行しましたが、それでも問題が解決し
ません

13

Android SDK Managerを開き、すべての23.xxバージョンのビルドツールをインストールすることで、問題を解決しました。

スクリーンショットをご覧ください。

ここに画像の説明を入力してください


やった!(MacでDecoを使用)ありがとう!
JeremyF

5

注:これはAndroid Studioのバグかもしれません。

  1. プロジェクト構造に移動
  2. アプリモジュールを選択
  3. 最初のタブの[プロパティ]で、コンパイルSDKのバージョンをGoogle API xxからAPI XXに変更します(例:Google API 23ではなくAPI 23)。
  4. OKを押します
  5. 進行中のプロセスが完了するのを待ちます。私の場合、この時点ではエラーになりませんでした。

コンパイルされたSdkバージョンをGoogle API xxに戻します。

これが機能しない場合は、次のようにします。

  1. Google API(API xxではなくGoogle API xx)を使用して、ビルドツールのバージョンを下げます(例:Google API 23およびビルドツールバージョン23.0.1)。
  2. [OK]を押して、進行中のプロセスの完了を待ちます
  3. ビルドツールのバージョンを変更前のバージョンに戻します
  4. OKを押します
  5. プロセスの完了を待ちます。
  6. できた!

3

これらの推奨される指示に従うと、うまくいくように見えました:

ヒント:/ path / to / android / tools / androidを実行してSDKマネージャーを開きます。

1. Android-23の「SDKプラットフォーム」2.「Android SDKプラットフォームツール(最新)3.「Android SDKビルドツール」(最新)


3

別の番号で同じ問題があった場合、これは私にとってはうまくいきました:

  1. 上部の「Gradleプロジェクトの同期に失敗しました」というエラーメッセージをクリックします

  2. 左下隅の[Message Gradle Sync]ウィンドウで、提供されているソリューション[Install missing ...]をクリックします。

  3. 必要に応じて1と2を繰り返す

23:08 Gradle同期が失敗しました:C:\ Users \ vik \ AppData \ Local \ Android \ Sdkにハッシュ文字列 'android-26'のターゲットが見つかりませんでした

左下隅にソリューションを提供するAndroid SDK 左下隅にソリューションを提供するAndroid SDK


画像のリンクが消えた場合は、情報を追加してください。リンクが切れても、他のユーザーが回答をフォローできるようにします。
Dessus

2

これは、変更することで、私のために働いたcompileSdkVersion24にし、targetSdkVersion24と変更にcompileしますcom.android.support:appcompat-v7:24.1.0


2

この問題には2つの解決策があります。

1)[ツール]-> [Android]-> [SDKマネージャー]-> [SDKツール]([パッケージの詳細を表示]がオンになっていることを確認)を選択して、関連するAndroid SDKをダウンロードします。あなたのケースはAndroid 6.0(マシュマロ/ APIレベル21)です

2)または、build.gradleファイルを開いて次の属性を更新します。

  • compileSdkVersion
  • buildToolsVersion
  • targetSdkVersion

インストールした最新バージョンのAndroid API /使用したい別のインストール済みバージョン(通常、バグ修正などの理由で常に最新バージョンを使用することをお勧めしますが)

ステップ2を実行している場合、アプリで使用している場合は、Androidサポートライブラリのバージョンを更新することも忘れないでください。これはdependenciesビルドファイルのセクションにあり、次のようになります。

compile 'com.android.support:appcompat-v7:27.0.2'

27.0.2アプリで使用する予定のAPIレベルの最新のサポートライブラリバージョンに置き換えます)



1

何もうまくいきませんでした。SDKのパスを新しいSDKの場所に変更し、SDKを再インストールしました。


1

[ツール]> [Android]> [SDKマネージャー]。

ここに画像の説明を入力してください


私は通常、簡潔な答えのファンではありませんが、これは美しく行われます。私のためにすべてを解決しました。
Le Motは、2017年

ありがとう、@ LeMotJuiced。
CoolMind 2017年

1

Windowsを使用しているときにこの問題が発生しました。プロファイル内のSDKの場所が問題であることがわかりました。そのため、SDKフォルダーをドキュメントに再配置する必要があり、それが機能しました。


1

私は26について文句を言っていました。フォルダーを調べて27のフォルダーを見つけましたが、26は見つかりませんでした。そのため、26を27に置き換えて、build.gradleファイルを変更しました。compileSdkVersion、targetSdkVersion、および実装(これらの番号をv:7に変更:27.02)。それが私のエラーメッセージを変えました。次に、compileSdkVersionのすぐ下のandroidブラケットセクションにbuildToolsVersion "27.0.3"を追加しました。

これで、プロジェクト作成ボタンは0メッセージで機能します。

次に、実際に構成でモジュールを選択して実行できるようにする方法を説明します。


1

私にとっての問題は、23ではなくcompileSdkVersion '23'を書いたことです。引用符が問題でした。


1

ビルドコンソールで指定されたリンクから特定のAndroidリリースをダウンロードします。


1

この問題は私のために解決されましRun as administratorAndorid Studio


0

この問題は、実行しているコードが古いAPIレベルで作成されたために発生し、現在のSDKマネージャーはそれらの実行をサポートしていません。したがって、以下を試してください。1. APIレベル23をサポートするSDK Managerをインストールします。> SDK Manager、> Android SDKに移動し、API 23を選択してインストールします。2. 2番目の方法は、build.gradeアプリモジュールを更新して、compileSdkVersion、compile、およびその他の数値を現在サポートされているAPIレベルに変更することです。

注:APIとリビジョン番号を確認し、正確に変更してください。そうしないと、プロジェクトは同期しません


0

IDEがパッケージを持っていることを認識していることを確認してください。28をダウンロードした後も私のものではなかったので、SDKの選択肢としてFile-Project Structure-Modules-Appの下に表示されていないことに気付いたので、アンインストールしてから再インストールしました。

その上で、ビルドパスを変更して一致させることができます。

わずかに関連しますが、Google Playからの新しいAPI 26分の要件だけでなく、CompileSDKの更新を28に強制すると、最新の更新がコンパイルできるように見えます。ただし、これは依存関係に関係しており、依存関係には影響しない可能性があります

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.