1. ホーム

AAPT2error:checklogsfordetailsソリューション

2022-02-23 21:02:52

他の方と一緒に仕事をしていて、いつもxmlファイルのエラーに遭遇しています。AAPT2error:checklogsfordetailsと、プロジェクトのビルドがエラーを報告し、コードが追跡できないので、エラーがどこから来るのか追跡するのは困難です。私は偶然にも私の長年の問題を解決するために、このブログを見つけ、今、自分の学習として、それを共有するだけでなく、助けを必要とする人々を助けるために願って、以下は、元のリンクを添付しました。

http://blog.sina.com.cn/s/blog_5de73d0b0102yffd.html

AAPTはAndroid Asset Packaging Toolのフルネームで、アプリの構築、さらにはAndroidシステムの構築に欠かせないツールです。その目的は、すべてのリソースファイルを圧縮してAndroid APKにパッケージすることです。Android SDKディレクトリで見つけることができます。

AAPT2は、Android Studio 3.0からデフォルトのリソースパッケージングツールとして使用されているAAPTの全く新しいバージョンです。

<スパン アプリを開発していると、以下のようなAAPT2エラーに遭遇することがあります。

原因:com.android.builder.internal.aapt.v2.Aapt2Exception.Aapt2Exceptionが発生しました。AAPT2 エラー: 詳細はログを確認してください。

 at com.android.builder.png.AaptProcess$NotifierProcessOutput.handleOutput(AaptProcess.

 at com.android.builder.png.AaptProcess$NotifierProcessOutput.err(AaptProcess.

 at com.android.builder.png.AaptProcess$ProcessOutputFacade.err(AaptProcess.

 at com.android.utils.GrabProcessOutput$1.run(GrabProcessOutput.

ウェブ上では、AAPT2を無効化することでエラーが解消されるという意見が多く、その場合は  gradle.properties  ファイルに、"という行を追加してください。 android.enableAapt2=false "です。

しかし、Android Studio は、AAPT2 を無効にするのではなく、とにかく使用するよう促してきます:。

オプション 'android.enableAapt2' は非推奨であり、今後使用するべきではありません。

この警告を消すには 'android.enableAapt2=true' を使ってください。

<スパン 2018年末に撤去予定です。

AAPT2を無効にすることなく、これらのエラーを解決する方法を見てみましょう。

まず、AAPT2はリソースファイルをパッケージングするためのツールであり、AAPT2がエラーを報告した場合、(AAPT2の内部エラーとは関係なく)リソースファイルに何か問題があると考えて間違いないでしょう。

アプリをビルドする際、ビルドウィンドウを開き、"Toggle View"をクリックして、テキスト出力に切り換えます。

トグルは以下のようになります。

このビューでは、gradleの実行出力をはっきりと見ることができます。

この出力を見ていくことで、エラーの原因を分析することができます。

上記の出力には、次のように書かれています。

1) エラーが発生したファイルは、bedit_activity.xml です。

2) エラーの原因は、android:backgroundプロパティの値に互換性がないためです。

ファイルを開いて見てみましょう。

問題はここで明らかです。色の値が間違っていて、余分な "#" 記号があります。これを修正し、再構築すれば問題は解決します。

OK、お役に立ちましたか?