Visual Studio for Mac中App图标与最近应用图标不匹配问题求助
我之前也踩过类似的坑,Android的图标缓存和资源目录规则有时候真的让人头疼。针对你的情况,试试下面这些步骤:
确认图标目录是否正确:Android官方推荐把应用启动图标放在
mipmap-*系列目录(而非drawable),因为mipmap目录的资源会被系统启动器优先缓存。检查你的AndroidManifest.xml里的android:icon属性是不是指向了@mipmap/appicon,同时确保每个mipmap目录(mdpi/hdpi/xhdpi/xxhdpi/xxxhdpi)里都有对应的自定义图标文件,命名完全一致。彻底清理项目缓存:
- 关闭Visual Studio for Mac
- 删除项目根目录下的
bin和obj文件夹(这两个是编译生成的缓存,有时候会残留旧资源) - 重新打开项目,依次执行
Build -> Clean Solution和Build -> Rebuild Solution
清除设备端的启动器缓存:
卸载应用后,别着急重装——去设备的「设置」→「应用」里找到你的默认启动器(比如Pixel Launcher、Nova Launcher之类的),清除它的缓存和数据。系统启动器会缓存应用图标,哪怕你卸载了旧应用,缓存可能还在。之后重启设备再重新安装你的应用。用VS for Mac的工具自动生成图标集:
手动放文件很容易漏分辨率,试试这个更省心的方法:
右键你的Android项目 →Add→New File→ 选择Android分类下的Android Icon Set,按照向导导入你的原始图标,VS会自动为所有分辨率的mipmap目录生成适配好的图标,同时自动更新清单文件的配置。这个方法能避免很多手动操作的错误。检查是否有Activity级别的图标覆盖:
看看你的启动Activity有没有单独设置android:icon属性,如果有的话,最近应用窗口会优先显示这个Activity的图标,而不是Application级别的图标。把Activity的icon属性去掉或者改成和Application一致的即可。
内容的提问来源于stack exchange,提问作者Gniewomir

