cordova 映像资产未生成ic_launcher_foreground. xml文件

dnph8jn4  于 2022-11-15  发布在  其他
关注(0)|答案(6)|浏览(337)

我已经在Image Asset工具中创建了所有自适应图标,但它没有创建ic_launcher_foreground.xml文件-这反过来又导致我的构建失败,因为ic_launcher.xml和ic_launcher_round.xml文件中引用了foreground.xml文件。
我已经阅读了许多线程就如何解决这个问题,但没有一个是工作。
此外,ic_launcher. xml和ic_launcher_round. xml文件都专门引用了这两个文件:

<background android:drawable="@drawable/ic_launcher_background" />
<foreground android:drawable="@mipmap/ic_launcher_foreground" />

/drawable文件夹是使用ic_launcher_background.xml文件创建的,但“图像资源”工具没有创建/mipmap文件夹-它似乎正在创建所有其他/mipmap-XYZdpi文件夹和图标。
我提出这个问题是因为很多其他线程显示ic_launcher. xml和ic_launcher_round. xml文件同时引用同一个/drawable文件夹中的background.xml和foreground.xml文件,这与上面的线程不同。
在图像资产中:前景标签:图层名称:ic_launcher_foreground资产类型:映像路径:/dev/myApp/resources/myCustomIcon.png背景标签页:图层名称:ic_launcher_background资产类型:映像路径:res/drawable/ic_launcher_background.xml
只有当我在前台选项卡上选择Asset Type: Clip Art时,我才能让ic_launcher_foreground.xml文件出现在“输出文件”屏幕中
最新消息:
我在与我的项目相关的Android Studio文件夹深处的drawable (v24)文件夹中找到了一个ic_launcher_foreground.xml文件。我将该文件复制到了我的项目res/drawable文件夹中-现在,当我的应用编译到我的测试设备时,我会看到它的Android半机器人图标。

hpxqektj

hpxqektj1#

好吧,我想通了-终于。把我的答案贴给其他有同样问题的人。
使用图像资产工具-仅当每个类型(前景选项卡/背景选项卡)资产类型定义为除图像类型之外的任何类型时,才会生成ic_launcher_foreground.xmlic_launcher_background.xml。PNG/JPG资产类型不会生成这些xml文件。
无论资产类型如何,都会生成ic_launcher.xmlic_launcher_round.xml。如果资产类型为color/art/text,则这两个xml文件仅引用其他文件-引用将指向@drawable/文件夹或@values/文件夹中的其他XML文件。

<background android:drawable="@drawable/ic_launcher_background" /> OR 
<background android:drawable="@values/ic_launcher_background" /> 
//@drawable - is the root of all your drawables folders
//   - and references only XML, ie: ie_launcher_background.xml

如果资产类型是图像(png/jpg),则引用将指向存在于任何@mipmap文件夹中的新创建的png/jpg文件。

<foreground android:drawable="@mipmap/ic_launcher_foreground" />
// @mipmap is simply root of all your mipmap folders
// references actual png files, ie: ic_launcher_foreground.png

最后,如果您使用的是Cordova,则需要修改config.xml以反映要使用的图标FILES:

<edit-config file="app/src/main/AndroidManifest.xml" mode="merge" target="/manifest/application">
     <application android:icon="@mipmap/ic_launcher"  android:roundIcon="@mipmap/ic_launcher_round" />
</edit-config>
// this telling the app to find those two XML files in the mipmap-anydpi-v26 folder
// and those files in turn tell the app to find all the png files in the other "mipmap" folders

// if it were this:
<edit-config file="app/src/main/AndroidManifest.xml" mode="merge" target="/manifest/application">
     <application android:icon="@drawable/ic_launcher"  android:roundIcon="@drawable/ic_launcher_round" />
</edit-config>
// this telling the app to use the XML files sourced in the drawable folders
// if you used png as foreground and color as background
// ic_launcher.xml/ic_launcher_round.xml would both point to:
//      @mipmap/ic_launcher_foreground   (ie: png images)
//      @drawable/ic_launcher_background  (ie: xml files)

我希望这对其他人有帮助,因为我觉得以上所有内容在其他文档中解释得很差。

unhi4e5o

unhi4e5o2#

现在事情很简单:右键单击“res”或“mipmap”文件夹,然后从弹出菜单中选择“新建〉图像资产”,启动“图像资产工作室”。2图像资产工作室将打开。3现在您可以根据需要创建自适应启动器图标或仅遗留启动器图标。
要更新现有图标,只需选择现有的ic_launcher_foreground. xml文件和ic_launcher_background. xml文件,然后单击“下一步”创建新定义,覆盖旧定义。

mjqavswn

mjqavswn3#

使用Windows资源管理器,转到存储所有“ic_launcher文件”的项目“res”文件夹,并首先删除所有“ic_launcher文件
现在在Android Studio中“点击mipmap文件夹”-〉“生成图像资产”。
它为我解决了这个问题

aemubtdh

aemubtdh4#

嗯,我所做的...(经常发生的是,其他人的解决方案谁说,他们终于修复了它从来没有为我工作,所以我想我会贡献另一个解决方案,可能只为我工作:))
首先,我按原样生成了图像资产文件。我右键单击res文件夹,单击“New”,然后单击“Image asset”。我按原样保留了“source asset”路径(并保留了launcher_foreground. xml文件的路径),然后创建了资产。
然后我回去再次生成图像资产,但这一次是用我自己的PNG图像。到目前为止似乎一直有效,至少在下一次更新使这个解决方案过时之前。

3hvapo4f

3hvapo4f5#

在Asset Studio向导的第二页上,有一个名为“Res Directory”的下拉列表。
我必须在点击完成之前选择调试。之后我才能构建。

sz81bmfz

sz81bmfz6#

打开您的Android Studio,然后转到您的项目
转到android-〉应用程序-〉屏幕-〉主屏幕-〉资源-〉mipmap-anydpi-v26在右键单击-〉新建-〉映像资产-〉配置映像资产-〉路径-〉mipmap-hdpi-〉ic_launcher_foreground. png
按照这些步骤将解决您的问题肯定。

相关问题