web-dev-qa-db-ja.com

Android Studio 3.1はシンボルを解決できません(テーマ、ウィジェット、属性など)

私は今日Android Studioを3.1にアップグレードしましたが、今やAndroid Studioはほとんどのリソースのシンボルを解決できないと言っています(例えばstyles.xml?attr/actionBarSizeThemeOverlay)。これは私がこれまでエミュレータでビルドしたり実行したりするのを妨げているようには見えませんが、これらのエラーは私を緊張させています。

他の誰かがこの問題を経験しましたか?どうやって解決できますか?私はgradleの同期と自分のプロジェクトのクリーニングを試みましたが、それはまったく助けにはならないようです。

何か案は?

Android Studio 3.1をGradleバージョン4.4およびGradle Plugin 3.1.0と共に使用しています

編集:この問題はAndroid Studio 3.1.1、3.1.2、3.1.3、3.1.4およびGradle Plugin 3.1へのアップデートに影響します。 1、3.1.2、3.1.3、および3.1.4。しかし、以下の答えはまだうまくいきます。

64
JPM

プロジェクトを閉じて、もう一度インポートします。今日私のために働きました。

import project

164
marko

既存のAndroid Studioプロジェクトとしてプロジェクトを閉じて再度開く

19
Andrew Glukhoff

サポートライブラリが同期していません。

このエラーは、サポートライブラリがプロジェクトと同期しなくなったために発生します。同期を取り戻すには、次の手順を実行します。

  1. アプリモジュールのbuild.gradleファイルを開きます。
  2. サポートライブラリのimplementation行をコメントアウトします。私にとってそれはこのように見えます:

    //implementation 'com.Android.support:appcompat-v7:27.1.1'
    //implementation 'com.Android.support:recyclerview-v7:27.1.1'
    //implementation 'com.Android.support.constraint:constraint-la
    
  3. プロジェクトをgradleと同期します。あなたは今いくつかのエラーがあるでしょう。心配しないでください。

  4. 以前にコメントアウトしたimplementation行のコメントを外します。

    implementation 'com.Android.support:appcompat-v7:27.1.1'
    implementation 'com.Android.support:recyclerview-v7:27.1.1'
    implementation 'com.Android.support.constraint:constraint-la
    
  5. あなたのプロジェクトをもう一度gradleと同期します。

「シンボルを解決できません」というエラーはなくなりました。これは私にとって何度も異なるプロジェクトでうまくいきました。

  • プロジェクトに複数のモジュールがある場合は、すべてのモジュールについて一度に上記の指示に従う必要があります。
16
Suragch

Android Studioをアップグレードした後、キャッシュを無効にして再起動することができます。

File> Invalidate Caches / Restart…

introducir la descripción de la imagen aquí

9
Elenasys

もう一度プロジェクトをインポートするだけではうまくいきませんでした。

私の解決策は

  1. プロジェクト内の.ideaフォルダを削除します。
  2. それからFile> Close Projectでプロジェクトを閉じます
  3. 次にWelcome画面Import Project (Gradle, Eclipse ADT, etc.)からFile> New > Import Projectまたはでプロジェクトをインポートします。

詳細についてはスクリーンショットを参照してください

1st solution

または

2nd solution

2
Khemraj

プロジェクトを閉じてから既存のプロジェクトを開くのは不思議です。

なんらかの理由で、これらの属性は26のライブラリにもう見つかりません。これらのライブラリを増やすには、compileSdkも27に増やす必要があります。おそらくsdkをダウンロードする必要があります。27

ショートバージョン、以下はアプリ「graddle」の上に行く

Android {
    compileSdkVersion 27
    //...
}

dependencies {
    implementation 'com.Android.support:appcompat-v7:27.1.0'
    implementation 'com.Android.support:design:27.1.0'
    //...
}

ロングバージョン、以下のファイルをすべて確認してください。

gradle-wrapper.properties

distributionBase=GRADLE_USER_HOME
distributionPath=wrapper/dists
zipStoreBase=GRADLE_USER_HOME
zipStorePath=wrapper/dists
distributionUrl=https\://services.gradle.org/distributions/gradle-4.4-all.Zip

build.gradle(プロジェクト)

buildscript {

    repositories {
        google()
        jcenter()
    }
    dependencies {
        classpath 'com.Android.tools.build:gradle:3.1.0'


        // NOTE: Do not place your application dependencies here; they belong
        // in the individual module build.gradle files
    }
}

allprojects {
    repositories {
        google()
        jcenter()
    }
}

task clean(type: Delete) {
    delete rootProject.buildDir
}

そして最後にbuild.gradle(app)

apply plugin: 'com.Android.application'

Android {
    compileSdkVersion 27
    defaultConfig {
        applicationId "cl.cutiko.testingupdate"
        minSdkVersion 21
        targetSdkVersion 27
        versionCode 1
        versionName "1.0"
        testInstrumentationRunner "Android.support.test.runner.AndroidJUnitRunner"
    }
    buildTypes {
        release {
            minifyEnabled false
            proguardFiles getDefaultProguardFile('proguard-Android.txt'), 'proguard-rules.pro'
        }
    }
}

dependencies {
    implementation fileTree(dir: 'libs', include: ['*.jar'])
    implementation 'com.Android.support:appcompat-v7:27.1.0'
    implementation 'com.Android.support.constraint:constraint-layout:1.0.2'
    implementation 'com.Android.support:design:27.1.0'
    testImplementation 'junit:junit:4.12'
    androidTestImplementation 'com.Android.support.test:runner:1.0.1'
    androidTestImplementation 'com.Android.support.test.espresso:espresso-core:3.0.1'
}
2
cutiko

プロジェクトを閉じて、既存のAndroid Studioプロジェクトとして再度開き(インポートしませんでした)、うまくいきました。 Andrew Glukhoff のコメントに感謝します。

1
Emmanuel R

プロジェクトを閉じてAndroid Studioを終了しようとすることができます(閉じて再インポートするだけではうまくいきません)。 Android Studioを起動してプロジェクトをもう一度開きます。それは私のために働いた!

1
schv09

私は自分のgradleのバージョンを4.10.1に更新し、「修正して再インポート」しました。以前に.ideaの下にライブラリフォルダはありませんでした。そしてそれは働いた

0
ozge s

問題その1

私の問題は、私がAndroidプラグインのアルファ/ベータ版を使用した方法に関連していました

File > Project Structure > Project

Android Plugin Versionを確認してください

私は3.3.0-betaと呼ばれるものを使っていましたが、それでも別のプロジェクトでは3.1.0-alphaを使っていました

それを3.2.0に変更することは私の問題を解決するようです、build.gradle(Project)のものも変更することを忘れないでください

問題#2

.xmlファイルの1つにエラーがありました。 @stringリソースがありませんでした。すべてのxmlファイルをチェックし、それらがすべて正しいことを確認してください(xmlファイルを開くと、Android Studioのリンティングが有効になり、ファイルをスクロールします。何か問題がある場合は赤で表示されます)。

問題#3

build.gradleでは、Androidサポートライブラリの異なるバージョンをインポートしました。例えば.

implementation 'com.Android.support:appcompat-v7:28.0.0'
implementation 'com.Android.support:support-v4:27.1.0'

それらが同じバージョンであることを確認してください。そしてAndroid Studioがあなたのgradle依存関係の中に何も不平を言っていないことを確かめてください。それはあなたの依存関係のいくつかがまた異なるAndroidサポートライブラリのバージョンをインポートしたということかもしれません。

#1、#2、#3の後に実行する手順

プロジェクトをクリーンアップしますBuild > Clean Project

キャッシュを無効にしてFile > Invalidate Caches / Restartを再起動してください

再起動後、gradle buildが終了するのを待ってください。

0
grandia

私がcom.Android.tools.build:gradle 3.3.1gradle-4.10.1にアップデートしたときに私に似たようなエラー

次の方法を試しましたが、うまくいきませんでした。

  1. Clean Project - Rebuild Project
  2. Invalidate Caches / Restart
  3. .xmlエラーをチェックしてください(xmlに関するエラーが見つかりませんでした)
  4. .imlファイルを変更する

私はcom.Android.tools.build:gradle 3.2.1Restart my macを修正することでこのエラーを修正しましたが、私はしませんでした。どれがそれを修正できるか知っています、しかしそれは本当に私のために働きます。

0
Abominus
implementation 'com.Android.support:appcompat-v7:26.1.0'
implementation 'com.Android.support.constraint:constraint-layout:1.1.2'
implementation 'com.Android.support:design:26.1.0'

build.gradle(project)で上記の依存関係を更新してください。

以下のコードをbuild.gradle(Module:app)に入れてください。

classpath 'com.Android.tools.build:gradle:3.1.1'
classpath 'io.realm:realm-gradle-plugin:3.7.1'
classpath 'com.google.gms:google-services:3.1.0'
0
PRIYA

私にとって同じ症状/エラーは、Android Studioが好きではなかった名前の 'drawable-xxhdpi'フォルダに新しい画像をドラッグアンドドロップしたことによって引き起こされました - 例えば、名前の中の数字や大文字で。

「シンボルRを解決できません」というメッセージだけが表示され、有用なエラーメッセージは表示されませんでした。

アプリを同期し、プロジェクトをクリーニングして再構築した後でも、他のエラーが表示されずに「R」が認識されないという問題が残りました。

他の回答で提案されているようにプロジェクトを閉じてインポートしてもうまくいきませんでした。根本的な問題を考えると意味があります。

しかし、これは過去には他の人にはうまくいかなかったように見えますが、SOに関する他の質問と回答から判断して、新しいフォルダからDrawableフォルダを削除するとうまくいきました。

同様に、そしてより良い解決策は、明らかに、Androidがリソース名に嫌いな文字を削除するために画像の名前を変更してから、クリーンなプロジェクトやリビルドプロジェクトを行うことでもうまくいきました。

0
Mick