web-dev-qa-db-ja.com

Android St​​udioおよびAndroid.support.v4.app.Fragment:シンボルを解決できません

EclipseではなくAndroid St​​udioを試しています。それをインストールしてから、完全に新しいプロジェクトを開始し、ウィザードに従います。自分のコードは追加しません。

次に、右クリックして、新しいコンポーネント、新しいフラグメントを作成します。

enter image description here

新しいフラグメントを選択します:

enter image description here

そしてすぐに、コンパイルエラーが表示されます。

enter image description here

...だからグーグル検索を開始し、 サポートライブラリ4をインストールして参照する必要がある であることがわかりました。 build.gradle(つまり、Eclipseから来た私にとって新しいもの)を確認すると、次のように表示されます。

enter image description here

しかし、私はそれを

enter image description here

彼らがそう言ったので ここ 。再コンパイルなどすべての後、エラーはまだそこにあります。次に、次のように.jarファイルを直接参照します。

enter image description here

そして再びやだやだを再コンパイルしますが、それも助けにはなりません。

この動作は非常に奇妙に思えます。ここで何が欠けていますか?これはSDKマネージャービューです。

enter image description here

だから、私は何が欠けていますか?ありがとう=)

57
Ted

通常、この問題の症状は、ビルドがコマンドラインから正常に機能することです(つまり、build.gradleファイルが正しく設定されていることを意味します)が、IDEで構文強調エラーが表示されます。問題を解決するには、次の手順に従ってください:をクリックします 道具 通常はIDEの上部にあるツールバーから、 Android 次に移動します プロジェクトをGradleファイルと同期する ボタン。 IDEが適切なタイミングで手動で同期を強制するのではなく、自分自身だけで対処できないのは理想的ではないことがわかります。 https://code.google.com/p/Android/issues/detail?id=63151 でこの進捗を追跡しています

92
Scott Barta

動作しませんでした:

私はすでにbuild.gradleに次の依存関係がありました

implementation 'com.Android.support:support-v13:26.0.2'

次のすべてを試しましたが、

  • キャッシュの無効化/再起動
  • プロジェクトをGradleファイルと同期する
  • クリーンプロジェクト
  • プロジェクトを再構築
  • 徐々にきれいに

しかし、それらのどれも私のために働きませんでした。

解決:

最後に、"/。idea/libraries"を削除で解決し、その後gradleと同期して再構築しました。

109
Owen Chen

「ファイル」->「キャッシュの無効化...」に進み、「無効化して再起動」オプションを選択して修正してください。

45
Suresh Parmar

Android St​​udio 0.3.7の最新バージョンに更新してから、同じ問題が発生しました。だからあなたは私のもので試すことができます。

最新バージョンに更新したことを確認してくださいAndroidサポートリポジトリ-3 Androidサポートライブラリ-19

上記の添付画像として、あなたはすでにそれをしました。次に、次の設定をbuild.gradleに追加します

dependencies {
    compile 'com.Android.support:support-v4:19.0.0'
}

もう1つ:Android SDKが正しいSDKフォルダーをターゲットにしていることを確認してください

9
Lam Do

「ファイル」->「キャッシュを無効化...」

私のために働いた。

7
Rohit Mandiwal

enter image description hereショートカットが見つかりました:ファイル-プロジェクト構造-タブ:依存関係緑色の+記号をクリックし、support-v4(または必要なもの)を選択して、[OK]をクリックします。

今、あなたのgradleファイルに行き、それが追加されていることを確認してください

6
Pedro Gonzalez

1>ファイル->キャッシュを無効にする2>ビルド->リビルド

私の仕事

5
user5259011

私は降圧を使用していますが、プロジェクトフォルダの/.idea/librariesを削除することで同期グラドルが再び機能するようです。

5

現在までの最新バージョンのAndroidStudio(2015年11月10日)-v1.4(ビルドAI-141.2288178、2015年9月28日にビルド)を実行していますが、プロジェクトをビルドし、すべてが正常に機能しました。その後、コンピューターが非アクティブになってから数時間後、私は戻ってきて、サポートライブラリとは関係のないコードを編集し、次のコードを見始めました。

シンボル 'fragmentactivity'を解決できず、AndroidStudioエディターでfragmentactivityに関連する赤色の強調表示されたアイテムが表示されていました。

解決策は、単純に

ビルド...プロジェクトのリビルド...

他の人がそれを見て、それがそこで起こっていることを知っているかもしれないので、私はこれに言及するだけです。

4
raddevus

Androidスタジオには、依存関係を管理するオプションがあります。パスに従ってください。

  1. [ファイル]をクリックし、[プロジェクト構造]を選択します
  2. モジュール「アプリ」を選択
  3. 「依存関係」タブをクリックします
  4. +記号をクリックして、[ライブラリの依存関係]を選択します
  5. 必要に応じてsupport-v4または他のライブラリを選択し、[OK]をクリックします

FYIリンクのチェックstackoverflow.com/a/33414287/1280397

1
Ranjit Chandel

Hrrm ...これが今までに何回起こったかわからない:私はテストし、試し、グーグル、もう一度テストし、何時間もぐちゃぐちゃにして、最終的にあきらめたら、信頼できるStackoverflowに行き、詳細で明確な質問。

質問を投稿するとき、IDEとブームに切り替えてください-エラーが消えました。

上記のようにすでに試したことを除いて、コード内でまったく何も変更していないため、なぜ消えたのかを言えません。しかし、突然、コンパイルエラーはなくなりました!

Build.gradleで、次のようになりました。

dependencies {
    compile "com.Android.support:appcompat-v7:18.0.+"
}

最初は機能しませんでしたが、コンパイルエラーはなくなりませんでした。 IDEが届くまでに30分ほどかかったようです。

===編集=== build.gradleを再度表示すると、変更され、次のようになります。

dependencies {
    compile 'com.Android.support:support-v4:18.0.0'
    compile "com.Android.support:appcompat-v7:18.0.+"
}

私はappcompatが今何であるか本当に本当にわかりません。

1
Ted

私にとって:Build-> Clean Projectはこの質問を解決しました

1
Michael Yang

この問題の「魔法」を少し軽視するために。これらの変更を行った後、インターネット接続が必要です。何らかの理由で必要なライブラリをダウンロードできない場合、適切なメッセージ(「ライブラリを取得できませんでした」など)を表示する代わりに、同じビルドエラーが発生します。私の会社のVPNがレポをブロックしていることに気づくまで、これに1時間苦労していました。

0
Dennis K

やるアプリレベルのbuild.gradleおよびsyncに対する変更(gradle syncのみ)。繰り返しますが、build.gradleで変更した内容をやり直して同期します。問題が解決するはずです。

0
Uddhav Gautam

私は同じ問題に直面していました。私のbuild.gradleファイルで判明したように、これがありました:

configurations {
    all*.exclude group: 'com.Android.support'
}

それを削除すると問題が解決しました。だからみんな、それでもすべて問題が解決しない場合は、gradleファイルでexcludeキーワードを探してください。

0

このスレッドに来て、mavenでビルドするすべての人に:support-v4依存関係とビルドを追加して、リポジトリをダウンロードします。

次に、ライブラリを手作業でプロジェクトに追加します。

プロジェクト構造->ライブラリ->追加

正しいjarファイルのリポジトリに移動します:C:\ Users\XXXXXXX\.m2\repository\com\google\Android\support-v4\r7\support-v4-r7.jar

0
kaiser

このコード行を置き換えます

import Android.support.v4.app.FragmentActivity;

import androidx.fragment.app.FragmentActivity;

これで完了です。

0
Divyanshu Kumar

プロジェクトを閉じて再インポートするとうまくいきました。

0
Ankush Joshi

この問題に遭遇し、File> Invalidate Cachesを含むすべてを試しましたが、何も機能しませんでした。私にとってこの問題が発生した理由は、メインのgradleファイルとは異なるAppCompatバージョンを使用している外部プロジェクトがあったためです。

すべてのgradleファイルを同じバージョンに更新した後、コンパイルエラーはなくなりました。

0

Build.gradleにコメントがある場合、新しいサポートライブラリを追加しようとすると壊れることがあります。したがって、build.gradleを確認し、手動で正常に見えるかどうかを確認してください。

0
superarts.org

@daylightの回答を補完しています...

goto layout、レイアウトが表示されない場合、メッセージが表示されます

「ヒント:buildプロジェクト」

。プロジェクトをビルドすると、すべてがうまくいきます。

0
Guilherme Ramos