web-dev-qa-db-ja.com

Android Studio 3.3では、26未満のSDKバージョンのアダプティブアイコンが許可されていません

Android Studio 3.2.1から3.3にアップグレードしました。以前は私のプロジェクト-SDK v28をターゲットにしています-問題なくビルドされましたが、次のビルドエラーが発生します:

  • 問題の原因:タスク ':app:processDebugResources'の実行が失敗しました。

    Androidリソースのリンクに失敗しましたC:\ app\src\main\res\mipmap-anydpi-v25\ic_launcher_round.xml:エラー:<adaptive-icon>要素には、少なくとも26のSDKバージョンが必要です。
    エラー:ファイルリソースのリンクに失敗しました。

明らかに、<adaptive-icon>フォルダにmipmap-anydpi-v25リソースがあります。

したがって、どのASバージョンがこれを正しく処理しますか。 3.2.1または3.3? v25アイコンを削除する必要がありますか? Lollipopはこのタイプのアイコンをサポートしていると思いました...

10
l33t

これを正しく処理するASバージョン。 3.2.1または3.3?

適応アイコンがAndroid 8. (APIレベル26)に追加されたため、おそらく3.3。

V25アイコンを削除する必要がありますか?

ディレクトリをmipmap-anydpi-v26/に変更します。このアイコンをAndroid 8.0+に引き続き使用できます。minSdkVersionがその下にある場合(私はそうだと思います)、古いデバイスのアイコンの代替実装。

Lollipopはこのタイプのアイコンをサポートしていると思いました...

LollipopはAndroid 5.x、APIレベル21-22です。-v25ディレクトリはこれらのAPIレベルでは使用されません。

3
CommonsWare

AS 3.4では、次のことを行う必要がありました。

Android Studio: File | Project Structure

enter image description here

「新規追加」を使用できるようになりませんでした。アダプティブアイコンによる画像アセットUNTILプロジェクトSDKとビルドを正しく選択しようとした後でも、リストからSDK 25を削除する最後の手順を実行しました目標。

私はいくつかのことを試しましたが、これは私にとってそれがうまくいく最後のステップでした。これが私の構成の特定のものであるかどうかはわかりませんが、これで問題が解決しました。

3
tommycox

同じ問題がありました。手動でファイルをめちゃくちゃにしたが、更新するまで気付かなかったからです。私の場合、AS 3.3にアップデートした後、競合しているファイルは次のとおりです。

  • drawable/ic_launcher_background.xml
  • drawable-v24/ic_launcher_foreground.xml

ASはapp/build.gradleのmin sdk "minSdkVersion 26"を変更することでエラーなしでビルドしますが、公開目的には実用的ではありません。 簡単なクイックソリューションは:

  • 空の新しいプロジェクトを作成する
  • まったく同じファイルをコピーする
  • 競合するプロジェクトでそれらを置き換える
1
Cristián