ビルド時に「Android Resource Linking Failed」なんてエラーが出てきて、困ってしまった方も多いんじゃないでしょうか。
今回は、そんなエラーの原因と具体的な解決法について、手順を追って見ていきましょう。
Android resource linking failed Output: D:AndroidStudioProjects0minproSample_kotlin1BasicWhatsYourNameappbuildintermediatesincrementalmergeDebugResourcesmerged.dirvalues-v28values-v28.xml:7: error: resource android:attr/dialogCornerRadius not found. D:AndroidStudioProjects0minproSample_kotlin1BasicWhatsYourNameappbuildintermediatesincrementalmergeDebugResourcesmerged.dirvalues-v28values-v28.xml:11: error: resource android:attr/dialogCornerRadius not found. D:AndroidStudioProjects0minproSample_kotlin1BasicWhatsYourNameappbuildintermediatesincrementalmergeDebugResourcesmerged.dirvaluesvalues.xml:1256: error: resource android:attr/fontVariationSettings not found. D:AndroidStudioProjects0minproSample_kotlin1BasicWhatsYourNameappbuildintermediatesincrementalmergeDebugResourcesmerged.dirvaluesvalues.xml:1257: error: resource android:attr/ttcIndex not found. error: failed linking references.
もくじ
そもそも「Android Resource Linking Failed」って何が原因?
このエラー、名前だけ聞くと何だか難しそうですが、実は設定の不備やSDKバージョンが原因で起きることが多いんです。
Android Studioでアプリをビルドするとき、設定されたSDKやライブラリが見つからないと「リンク失敗」状態になるため、こんなエラーメッセージが表示されます。
具体的には、ライブラリの置き場所やSDKバージョンがずれている可能性があります。
こうした設定を見直すことで、エラーは案外あっさりと解決できます。
解決法:3つのポイントに注目!
1. プロジェクトとアプリの「build.gradle」ファイルを確認
まずは build.gradle
ファイルにアクセスします。これには「プロジェクトレベルの build.gradle」と「アプリケーションレベルの build.gradle」があるので、それぞれを確認する必要があります。
- プロジェクトレベルの build.gradle は、プロジェクト全体の設定を記載しています。
- アプリケーションレベルの build.gradle は、各アプリケーションの依存関係やバージョン設定を行っています。
この2つのファイルを見比べてみて、次のポイントをチェックします。
(注)Androidのネイティブアプリではなく、FlutterアプリのプロジェクトをAndroid Studioで開いている場合は、以下を参考に「android」ウィンドウを開いてください。
2. リポジトリ設定の見直し
プロジェクトレベルの build.gradle
ファイルを開いたら、 allprojects
ブロックに「Googleのリポジトリ」が追加されているか確認しましょう。
これがないと、最新のライブラリをリンクできなくなってしまいます。
3. SDKバージョンを最新に合わせる
次に、アプリケーションレベルの build.gradle
ファイルを確認して、 compileSdkVersion
と targetSdkVersion
のバージョンを見直します。
一般的に、このバージョンは最新(この記事執筆当初は「28」) かそれに近いものにしておくのが推奨されています。
もし古いバージョンで設定されていた場合、以下のように変更してみましょう。
(注)targetSdkVersion(対象APIレベル)は時間の経過につれて引き上げられていきます。詳細は以下ご参照ください。
バージョンの不一致が原因の場合、この設定でエラーが解消されると思われます。
最後に:ビルドを試してみよう!
ここまで設定を確認したら、ビルドを再度試してみましょう。
リポジトリ設定とSDKバージョンが合っていれば、エラーが解消される可能性が高いです。
もしエラーが解消されなければ、他の依存関係も見直すといいかもしれません。
エラー対応は慣れるまで難しいと感じることもありますが、こうした設定をしっかり確認していくと、少しずつAndroid Studioやビルドの仕組みに詳しくなっていきます。
焦らず、ひとつずつ設定を見直していきましょう!
(詳しくは下の動画で解説していますのでよろしければご覧ください)