はじめに
2018年3月にIonicのアプリをビルドしようとしたら、今までビルドできていたソースが突然以下のようなエラーが発生して、ビルド出来なくなってしまいました。
:app:processArm64DebugResources .gradle\caches\transforms-1\files-1.1\xwalk_core_library-23.53.589.4.aar\ddf6f1dc93e557ee26aa87c9d7227058\res\values\dimens_03.xml:14:5-51: AAPT: error: resource android:attr/fontVariationSettings not found. .gradle\caches\transforms-1\files-1.1\xwalk_core_library-23.53.589.4.aar\ddf6f1dc93e557ee26aa87c9d7227058\res\values\dimens_03.xml:14:5-51: AAPT: error: resource android:attr/ttcIndex not found. platforms\android\app\build\intermediates\incremental\mergeArm64DebugResources\merged.dir\values\values.xml:99: error: resource android:attr/fontVariationSettings not found. platforms\android\app\build\intermediates\incremental\mergeArm64DebugResources\merged.dir\values\values.xml:99: error: resource android:attr/ttcIndex not found. error: failed linking references. FAILED 46 actionable tasks: 46 executed Failed to execute aapt com.android.ide.common.process.ProcessException: Failed to execute aapt at com.android.builder.core.AndroidBuilder.processResources(AndroidBuilder.java:796) at com.android.build.gradle.tasks.ProcessAndroidResources.invokeAaptForSplit(ProcessAndroidResources.java:551) at com.android.build.gradle.tasks.ProcessAndroidResources.doFullTaskAction(ProcessAndroidResources.java:285) at com.android.build.gradle.internal.tasks.IncrementalTask.taskAction(IncrementalTask.java:109)
ビルドをし直したり、platformを一度削除して、再追加したりしたのですが、解決せず、色々調べたところ、以下の記事が見つかりました。 https://stackoverflow.com/questions/49171052/error-android-resource-linking-failed-aapt2-27-0-3-daemon-0 Androidのサポートライブラリがアップデートされており、Crosswalkなどのプラグインがそれに対応できずにエラーが発生しているようです。
対応方法
以下の手順で、build.gradeを修正します。
念のため、platformを再追加します。
ionic cordova platform rm android ionic cordova platform add android
platforms/android/appの下にある、build.gradleファイルの一番上に、以下を記述
configurations.all { resolutionStrategy.force 'com.android.support:support-v4:27.1.0' }
ビルドを実行
ionic cordova build android
以上