drawable/ic_launcher_foreground文件未找到。如何找到该xml文件?

26

Gradle构建不成功,因为它找不到drawable中的ic_launcher_foreground.xml文件。

这里是错误消息

实际错误出现在这个文件中


2
你能在物理位置上找到文件吗?如果可以,那么请清理并重建您的项目。 - Sara Tirmizi
找不到文件。 - Thrinadh Reddy
1
这段与编程有关的内容翻译成中文如下:意思是“ic_launcher_foreground在文件夹中不存在,只有在您的res drawable文件夹中可用的资源才能在此处使用”。 - Sara Tirmizi
1
@ThrinadhReddy 如果你无法在物理上找到该文件,则它就不存在,错误是有效的 :) - Umair
3
@ThrinadhReddy - 你是怎么解决这个问题的?我也遇到了同样的问题。我选择PNG文件作为我的前景资源类型:image,但生成后它没有生成ic_launcher_foreground.xml文件。没有这个文件,我的项目构建会失败,因为ic_launcher.xmlic_launcher_round.xml文件都引用了ic_launcher_foreground.xml文件。这让我很疯狂。如果我选择资产类型:颜色、文本或剪贴艺术——工具将生成ic_launcher_foreground.xml文件,但如果选择PNG文件,则不会生成。救命! - rolinger
我正在使用react-native。我想通过Android Studio创建应用程序图标。为什么我添加一个新的图像资产,但它删除了2个文件“ic_launcher”和“ic_launcher_round”,只有“ic_launcher_foreground”文件消失了呢?我再次添加了新的资产,它有其他两个文件,但是ic_launcher_foreground文件被删除了。此时,我无法再运行项目了,它显示错误:“resource mipmap/ic_launcher_foreground not found”。我能做的最好办法就是删除所有mipmap文件夹,然后再次添加新的图像资产,就会有所有3个文件了。为什么?我看到教练们都会创建这3个文件。 - Nam Lê Quý
15个回答

56

我曾经遇到过这个问题,而且那个文件确实是存在的。

我进入了这个文件并格式化了其中的内容(即进行了更改),这样就解决了构建系统无法识别该文件的问题。


1
我也遇到了完全相同的问题。奇怪的是,如果我不手动更改 .xml 文件,构建系统就无法选择该文件。 - João Rebelo
15
在撞墙30分钟并多次重新创建资源后,这个方法解决了我的问题。打开“现有”的前景xml,在标签末尾按Enter键并重新构建即可。现在它已经可以工作了! - Adi B
没错,那个有效。 - paakjis
嗯,那有帮助...一定有一个转储缓存的地方。 - Pascal
@SndrSchnklshk 是的,我认为是这样 - 任何内容更改都可以。 - Miha Markic
显示剩余4条评论

32

我通过删除项目中的Mipmap文件夹并右键单击res /文件夹重新创建图标来解决了这个问题。


6
做到了。虽然指示可能不够清晰:在资源文件夹上右键单击,选择“新建”>“图像资产”。 - Herii

14
如果您从Android项目中删除ic_launcher_foreground.xmlic_launcher_background.xml文件,则无需担心。只需执行以下步骤:
  1. 右键单击drawable目录(在res文件夹内),然后选择New--->Image Asset。(ic_laucher的上述两个命名文件将自动生成)
  2. 然后单击下一步,最后完成即可。

2
我正在尝试做这件事,但某种原因导致“图像资产”工具未创建“ic_launcher_foreground.xml”文件 - 其他所有内容似乎都已经就位。我使用了实际的图像来创建我的图标 - 并在“前景”选项卡的“资产类型路径”中选择了该图像的路径。当我点击“下一步”时,它会显示要创建的所有输出目录/文件 - “ic_launcher_foreground.xml”文件没有出现在任何地方,只有“drawable/ic_launcher_background.xml”,“mipmap-anydpi-v26/ic_launcher.xml”和“mipmap-anydpi-v26/ic_launcher_round.xml”。 - rolinger
我做了同样的事情,有 ic_launcher_foreground 图片,但是后来丢失了 ic_launcheric_launcher_round 文件。 - Nam Lê Quý

8
由于某些原因,您可能意外删除了ic_launcher_forground文件或它丢失了。
一般来说,该文件位于drawable文件夹中。 enter image description here 一个快速的解决方法是添加此文件并重新构建项目。ic_launcher_forground

3
谢谢您给评论投反对票,如果能简要说明一下的话会非常有帮助。 - Akshay Katariya

2

我也遇到了同样的问题,我是这样解决的:

  1. 创建一个新项目或打开一个已有的项目
  2. 从中复制XML文件ic_launcher_foreground.xml(v24),并将其粘贴到drawable中。

1
请注意,大多数描述的步骤都不是必需的。构建失败是因为文件丢失。为了满足要求,只需要创建/复制任何有效的可绘制项(XML、JPG、PNG),将其命名为ic_launcher_foreground并放置在drawables文件夹中即可。 希望这可以帮助到您。 - fo2rist

2

在更新我的启动器图标(使用新的图像资源)后,我遇到了这个问题。问题通过第二次更新我的启动器图标来解决。不知道为什么第一次没有做好。


1
每次这都对我有用。我是一个完全的新手,通常只做iOS开发,所以谢谢! - aaronsti

1

在Android Studio中,打开res -> mipmap

打开ic_launcher文件夹,并按照文件夹的方式包含了drawable(hdpi、mdpi、xhdpi、xxhdpi等)。 现在在任何文件夹中,让我们以hdpi文件夹为例,删除不需要的文件,其名称相同但扩展名不同(通常需要删除ic_launcher_round.webp文件)。

对于ic_launcher_foregroundic_launcher_round文件夹也要重复此操作。

然后再次创建您的启动器图标(app文件夹 -> 右键单击 -> 新建 -> 图像资产)。

enter image description here


1
你能否请详细解释一下这个解决方案?虽然它对我有用,但我想了解更多。 - Ajay Pandya
这种方法不好!我们可以导入VectorFile,所有这些都会在导入过程中自动发生。别忘了在此之后进行“clean build”。 - sud007

1
我遇到了同样的问题。我检查了drawable文件夹的内容。发现drawable-v24文件夹是空的。 为了解决这个问题,请右键单击res并在资源管理器/查找器/文件中打开(根据您使用的操作系统),然后将drawable的内容复制到drawable-v24。 在此链接中查找路径中的文件夹:

screenshot


0
请检查您的drawable文件夹中是否缺少ic_launcher_forground文件。

enter image description here

请重新构建您的项目。


0
由于某种原因,当我添加了一个文件后,默认的可绘制资源就无法找到了。即使进行了Gradle同步和构建之后也是如此。然后当我删除了我添加的文件时,突然间这些可绘制资源又能够被找到了,构建也成功了。现在我仍然需要找出如何解决我的原始问题...

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接