8

リソースを解決できないため、Android Studio はテスト プロジェクトをコンパイルできません。gradle.build の res ディレクトリに対していくつかの異なる設定を試みましたが、何も機能しませんでした。ここで簡単なものが欠けていますか?これは単純な HelloWorld プロジェクトであり、個別のものは何もありません。

Android Studio ウィザード (最新リリース 0.2.5) によって作成された次のプロジェクト構造があります。

ここに画像の説明を入力

私の AndroidManifest.xml には、通常のアプリ名参照があります: @string/app_name この文字列は main/res/values/strings.xml で定義されています (上のスクリーンショットで選択されています)。

IDE (Android Studio) から取得したエラーは次のとおりです。

android-apt-compiler: [MyApplicationProject] C:\...\MyApplication\src\main\AndroidManifest.xml:6: error: 
Error: No resource found that matches the given name (at 'label' with value '@string/app_name').

「gradle tasks」を実行したときにコマンドラインから表示されるエラーは次のとおりです。

A problem occurred configuring root project 'MyApplicationProject'.
 > Failed to notify project evaluation listener.
    > Main Manifest missing from C:\...\MyApplicationProject\src\main\AndroidManifest.xml
4

5 に答える 5

6

defaultConfig の下に以下を追加してみてください (android {...} 内)。

sourceSets {
    main {
        manifest.srcFile 'AndroidManifest.xml'
        java.srcDirs = ['src']
        resources.srcDirs = ['src']
        aidl.srcDirs = ['src']
        renderscript.srcDirs = ['src']
        res.srcDirs = ['res']
        assets.srcDirs = ['assets']
    }
}
于 2013-11-21T17:37:38.727 に答える
4

現在の Android Studio バージョンでこの問題が発生している場合、または同じ程度の問題が発生している場合 (たとえば、描画可能なフォルダーに画像を追加しましたが、画像が認識されなかったなど)、あなたの問題は私が遭遇したものである可能性があります。

作業中のプロジェクトを複製した後にこの問題が発生した場合、この新しいプロジェクトは正しくインポートされていない可能性があります。

IDE でプロジェクトをコピーして貼り付け、名前を変更 (マニフェストの編集) してから作業しようとするというミスを犯しました。新しいプロジェクトはまだ元の res フォルダーにアクセスしているため、これは機能しません。

プロジェクトを複製するときは、オリジナルを台無しにしないように次のことを行う必要があります。

  1. Android Studio プロジェクト フォルダーに移動します (IDE で現在のプロジェクトを右クリックし、[エクスプローラーで表示] を選択します。
  2. このプロジェクトをコピーして同じディレクトリに貼り付けます。新しいバージョン名に応じてフォルダーの名前を変更します。
  3. IDE で [ファイル] > [プロジェクトのインポート] > ... に移動し、新しいプロジェクトのディレクトリを見つけます。
  4. (それに応じて IDE でプロジェクトの名前を変更します。AndroidManifest.xml でパッケージ名を変更します)

このようにして、IDE は新しいプロジェクトを作成し、元の res フォルダーではなく、正しい res フォルダーにアクセスします。

これは、この質問を読んでいる多くの人にとって解決策ではないかもしれませんが。プロジェクトを複製する適切な方法を発見する前に、この質問に何度も遭遇しました。

これで誰かの時間を節約できることを願っています。

于 2014-10-13T04:25:55.123 に答える