web-dev-qa-db-ja.com

ファイルリソースのリンクに失敗しました。 - 他の人から提供されたすべての解決策を試した後でも、このエラーが発生します。

これがエラーを起こしているJavaファイルです

package com.example.daksh.timetable;

import Android.support.v7.app.AppCompatActivity;
import Android.os.Bundle;
import Android.view.View;
import Android.widget.Button;
import Android.widget.ImageView;

public class MainActivity extends AppCompatActivity {

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);

        final Button mon_but,tue_but,wed_but,thur_but,fri_but;
        mon_but = (Button)findViewById(R.id.mon);
        tue_but = (Button)findViewById(R.id.tue);
        wed_but = (Button)findViewById(R.id.wed);
        thur_but = (Button)findViewById(R.id.thur);
        fri_but = (Button)findViewById(R.id.fri);
        final ImageView main_Image = (ImageView) findViewById(R.id.day);
        final int[] dayarray = {R.drawable.monday,R.drawable.tuesday,R.drawable.wednesday,R.drawable.thursday, R.drawable.friday};

        mon_but.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View view) {
                main_Image.setImageResource(dayarray[0]);
            }

        });
        tue_but.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View view) {
                main_Image.setImageResource(dayarray[1]);
            }
        });
        wed_but.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View view) {
                main_Image.setImageResource(dayarray[2]);
            }
        });
        thur_but.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View view) {
                main_Image.setImageResource(dayarray[3]);
            }
        });
        fri_but.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View view) {
                main_Image.setImageResource(dayarray[4]);
            }
       });
   }
}

私が得ているエラーは以下の通りです

情報:Gradleタスク[クリーン、:app:assembleDebug] C:¥Projects¥TimeTable¥app¥src¥main¥res¥layout¥activity_main.xmlエラー:エラー:リソースAndroid:attr/colorSwitchThumbNormalは非公開です。エラー:resource Android:attr/colorSwitchThumbNormalは非公開です。 C:¥Projects¥TimeTable¥app¥src¥main¥res¥layout-land¥activity_main.xmlエラー:エラー:リソースAndroid:attr/colorSwitchThumbNormalは非公開です。エラー:resource Android:attr/colorSwitchThumbNormalは非公開です。エラー:ファイルリソースのリンクに失敗しました。エラー:Java.util.concurrent.ExecutionException:Java.util.concurrent.ExecutionException:com.Android.tools.aapt2.Aapt2Exception:AAPT2エラー:ログの詳細を確認してくださいエラー:Java.util.concurrent.ExecutionException:com.Android.tools .aapt2.Aapt2Exception:AAPT2エラー:ログの詳細を確認してくださいエラー:com.Android.tools.aapt2.Aapt2Exception:AAPT2エラー:タスクのログの確認エラー:app:processDebugResourcesが実行に失敗しました。 aaptを実行できませんでした。情報:9sにBUILD FAILED情報:9エラー情報:0警告情報:コンソールの出力全体を参照してください。

これはActivity_main.xmlファイルです

    <?xml version="1.0" encoding="utf-8"?>
<Android.support.constraint.ConstraintLayout xmlns:Android="http://schemas.Android.com/apk/res/Android"
    xmlns:app="http://schemas.Android.com/apk/res-auto"
    xmlns:tools="http://schemas.Android.com/tools"
    Android:id="@+id/activity_main"
    Android:layout_width="match_parent"
    Android:layout_height="match_parent"
    Android:background="@drawable/background"
    Android:paddingBottom="16dp"
    Android:paddingLeft="16dp"
    Android:paddingRight="16dp"
    Android:paddingTop="16dp"
    tools:context=".MainActivity">

    <ImageView
        Android:id="@+id/day"
        Android:layout_width="0dp"
        Android:layout_height="0dp"

        Android:layout_marginBottom="8dp"
        Android:layout_marginEnd="8dp"
        Android:layout_marginStart="8dp"
        Android:layout_marginTop="16dp"
        Android:contentDescription="TODO"
        app:layout_constraintBottom_toBottomOf="parent"
        app:layout_constraintEnd_toStartOf="@+id/guideline_dayselection"
        app:layout_constraintHorizontal_bias="0.519"
        app:layout_constraintStart_toStartOf="parent"
        app:layout_constraintTop_toTopOf="@+id/guideline2"
        app:layout_constraintVertical_bias="0.472"
        app:srcCompat="@drawable/monday" />

    <TextView
        Android:id="@+id/textView"
        style="@style/Widget.AppCompat.TextView.SpinnerItem"
        Android:layout_width="match_parent"
        Android:layout_height="wrap_content"
        Android:layout_marginTop="4dp"
        Android:fontFamily="serif"
        Android:text="@string/message"
        Android:textColor="?android:attr/colorSwitchThumbNormal"
        Android:textSize="18sp"
        app:layout_constraintStart_toStartOf="parent"
        app:layout_constraintTop_toTopOf="parent" />

    <Button
        Android:id="@+id/mon"
        Android:layout_width="wrap_content"
        Android:layout_height="wrap_content"
        Android:layout_marginBottom="16dp"
        Android:layout_marginStart="16dp"
        Android:layout_marginTop="50dp"
        Android:text="@string/monday"
        app:layout_constraintBottom_toTopOf="@+id/tue"
        app:layout_constraintStart_toStartOf="@+id/guideline_dayselection"
        app:layout_constraintTop_toTopOf="parent" />

    <Button
        Android:id="@+id/tue"
        Android:layout_width="wrap_content"
        Android:layout_height="wrap_content"
        Android:layout_marginBottom="16dp"
        Android:layout_marginStart="16dp"
        Android:text="@string/tuesday"
        app:layout_constraintBottom_toTopOf="@+id/wed"
        app:layout_constraintStart_toStartOf="@+id/guideline_dayselection"
        app:layout_constraintTop_toBottomOf="@id/mon" />

    <Button
        Android:id="@+id/wed"
        Android:layout_width="88dp"
        Android:layout_height="48dp"
        Android:layout_marginBottom="16dp"
        Android:layout_marginStart="16dp"
        Android:text="@string/wednesday"
        app:layout_constraintBottom_toTopOf="@+id/thur"
        app:layout_constraintStart_toStartOf="@+id/guideline_dayselection"
        app:layout_constraintTop_toBottomOf="@id/tue" />

    <Button
        Android:id="@+id/thur"
        Android:layout_width="wrap_content"
        Android:layout_height="wrap_content"
        Android:layout_marginBottom="16dp"
        Android:layout_marginStart="16dp"
        Android:text="@string/thursday"
        app:layout_constraintBottom_toTopOf="@+id/fri"
        app:layout_constraintStart_toStartOf="@+id/guideline_dayselection"
        app:layout_constraintTop_toBottomOf="@id/wed" />

    <Button
        Android:id="@+id/fri"
        Android:layout_width="wrap_content"
        Android:layout_height="wrap_content"
        Android:layout_marginBottom="8dp"
        Android:layout_marginStart="16dp"
        Android:text="@string/friday"
        app:layout_constraintBottom_toBottomOf="parent"
        app:layout_constraintStart_toStartOf="@+id/guideline_dayselection"
        app:layout_constraintTop_toBottomOf="@id/thur" />

    <Android.support.constraint.Guideline
        Android:id="@+id/guideline_dayselection"
        Android:layout_width="wrap_content"
        Android:layout_height="wrap_content"
        Android:orientation="vertical"
        app:layout_constraintGuide_end="196dp" />

    <Android.support.constraint.Guideline
        Android:id="@+id/guideline2"
        Android:layout_width="wrap_content"
        Android:layout_height="wrap_content"
        Android:orientation="horizontal"
        app:layout_constraintGuide_percent="0.15339233" />


</Android.support.constraint.ConstraintLayout>
15
The Bastard

エラーのあるJavaファイルが1つ以上あるため、XMLファイルでこのエラーが発生している可能性があります。

すべてのXMLファイルを調べてエラーを解決し、次にビルドメニューのcleanまたはrebuildプロジェクトを実行します。

最近編集したXMLファイルから始めます

21
Anga Koko

これを読んでいる人が同じ問題を抱えている場合、これは最近私に起こりました、そしてそれはxmlヘッダーが誤って2回書かれていたことが原因でした:

<?xml version="1.0" encoding="utf-8"?>
<?xml version="1.0" encoding="utf-8"?> <!-- Remove this one -->
<shape xmlns:Android="http://schemas.Android.com/apk/res/Android">
     <solid Android:color="@color/mug_blue"/>
     <corners Android:radius="@dimen/featured_radius" />
</shape>

私が得ていたエラーは、このファイルとは完全に無関係であったので、見つけるのは難しいものでした。新しいxmlファイルすべてに、このような間違いがないことを確認してください(エラーとして表示されないため)。 EDITエラーとして表示されているようです。エラーログを確認してください。

15
P Fuster

あなたが得ているエラーを見てください。

C:¥Projects¥TimeTable¥app¥src¥main¥res¥layout-land¥activity_main.xmlエラー:エラー:リソースAndroid:attr/colorSwitchThumbNormalは非公開です。

つまり、activity_main.xmlでは「Android:colorSwitchThumbNormal」というカラーを参照していますが、「Android」ネームスペース内ではそのリソースは非公開です。おそらくあなたがやろうとしているのは、この属性のサポートバージョンからその色を参照しようとしているので、 "Android:"という接頭辞は付いていません。

<item name="Android:colorSwitchThumbNormal">@color/myColor</item>

と置換する:

<item name="colorSwitchThumbNormal">@color/second</item>
10

それはxmlエラーです。何らかの理由でビューまたは別のビューの文字列が削除された可能性があります。または行方不明の可能性があります "または/> .....など

しかし、ここで私は正確にどこに問題があるのか​​を解明するために良いテクニックを使用しています -

  • すべてのxmlファイルに移動し最小化する場合はルート要素を見つけます。このようなものなので、どこにエラーがあるのか​​がわかりました。修正してから、すべてのファイルに対してこのプロセスを繰り返します。

  • ファイルにエラーがあると、赤い3つのドットが表示されますenter image description here
  • ここでエラーを修正しました。この配列はもう文字列ファイルにはないので、この行を削除しました。 enter image description here
  • これでメインエラーがまだ発生している場合は、このファイルにエラーがなくなったことがわかります。エラーが解決するまで、すべてのxmlファイルに対してこのプロセスを繰り返す必要がありますenter image description here

私はそれが主な問題の解決策ではないことを知っていますが、それはあなたがすばやくエラーがどこにあるかを見つけさせ、あなたの時間を節約させます。

2
Khalid Ali

@ P Fusterによって提供される答えについてより一般的になるために。 xmlファイルにエラーがあるかもしれません。

私は同じエラーに遭遇し、終了タグが見つからないところでドロウアブルにエラーがありました。

これはあなたのxmlファイルのエラーです。 logcatがエラーをxmlファイル名のわかりやすいログメッセージで特定できない場合は、プロジェクトを消去してプロジェクトを再構築してみてください。それは私のために働きました。

Buildタブに、Android Issuesという名前のノードが表示されます。エラーメッセージはその下にあります。

2
live-love

私はこの問題を抱えています。主な問題は私がBottomAppBarファイルのxmlに属性を追加したことでした。同じエラーを抱えているけれども私の解決策がそれほど問題にならない人にとっては、エラーメッセージを読む必要があります。

1
AL Tegani

コピーした例のために他のプロジェクトからペーストしたコードをコピーしたことが時々起こります

<Android.support.design.widget.NavigationView
        Android:id="@+id/nav_view"
        Android:layout_width="256dp"
        Android:layout_height="match_parent"
        Android:layout_gravity="start"
        Android:background="@Android:color/white"
        Android:fitsSystemWindows="true"
        app:headerLayout="@layout/nav_header_main"
        app:itemTextColor="@color/colorDrawerItems"
        app:menu="@menu/activity_main_drawer" />

残念ながら、Androidスタジオでは依存関係エラーが常に表示されるわけではありませんが、implementation 'com.Android.support:designがプロジェクトに追加されていないため、クラスNavigationViewが見つからないことが起こります。

0
Pavel Poley

この同様のエラーは、以前にActivity Javaファイルを削除し、対応するxmlレイアウトファイルを削除していない場合にも表示されることがあります。

削除されたActivity Javaファイルのxmlファイルを削除し、プロジェクトをクリーンまたは再構築します。

その背後にある理由は、xml内のコンテキストの不一致が原因である可能性があります。 (これは、xmlレイアウトコードをコピーアンドペーストしている場合に発生する可能性があります)tools:コンテキストをアクティビティのJavaファイルに合わせます。

image

0
Shitab

XMLレイアウトファイルにnullまたは空の属性を持つ要素を残した場合や、オブジェクトの不適切なIDを指定するなど、Javaファイルのオブジェクト作成パスが指定された場合にも発生する可能性があります。

enter image description here

ここでfrombottom= AnimationUtils.loadAnimation(this,R.anim);どのアニメーションです。 IDまたはファイル名を空白のままにすると、このような問題が発生する可能性があります。

0

エラーは.xmlファイルのいくつかの問題に関連付けられています。各xmlフォーマットファイルを手動で開いてエラーを確認してください。私は同じ問題を抱えていました。手動で各ファイルを開く必要がありました。 @stringの呼び出しにエラーがありました。

0
aditya

私はアプリを実行しているときと同じエラーに直面していました:Android Studioのリンクが失敗しました。 String.xmlで行が抜けていたので、その行を含めました。それはエラーなしでうまくいった。

訂正前

<resources>
<color name="myColor">#FFE4E1</color>
<string name="Celsius">To Celsius</string>
<string name="Fahrenheit">To Fahrenheit</string>
<string name="calc">Calculate</string>
</resources>

編集後:

<resources>
<string name="app_name">Temp Converter</string>
<color name="myColor">#FFE4E1</color>
<string name="Celsius">To Celsius</string>
<string name="Fahrenheit">To Fahrenheit</string>
<string name="calc">Calculate</string>
</resources>
0
Sreenidhi D R

これは、ランダムなXMLファイルに何もしていないときに起こることがあります。ファイルを削除すると問題が解決します。

0
Mohamed Ali

エラーを解決するためにXMLファイルを確認してください。XMLfilesに加えられた変更がAffected.soに加えられた時間のほとんどは、あなたが行った最後の変更を調べてみてください。

あなたのプロジェクトをきれいにしてみてください。

ハッピーコーディング:)

0
Gaurav Lambole