相关疑难解决方法(0)

Mipmap drawables图标

从Android 4.3(Jelly Bean)开始,我们现在可以利用这些res/mipmap文件夹来存储"mipmap"图像.

例如,Chrome for Android将其图标存储在这些文件夹中,而不是更常用的res/drawable文件夹中.

这些mipmap图像与其他熟悉的可绘制图像有何不同?

我看到在我的清单中,我们使用@mipmap/限定符,而不是@drawable/,这对于资源文件夹名称是有意义的:

<activity
    android:name=".MipmapDemp"
    android:icon="@mipmap/ic_launcher" />
Run Code Online (Sandbox Code Playgroud)

参考文献:

Android 4.3的API的文档具有下面要说:

使用mipmap作为位图或drawable的源是提供高质量图像和各种图像比例的简单方法,如果您希望在动画期间缩放图像,这可能特别有用.

Android 4.2(API级别17)在Bitmap类中添加了对mipmap的支持 - 当您提供了mipmap源并启用了setHasMipMap()时,Android会在您的Bitmap中交换mip图像.现在在Android 4.3中,您还可以通过提供mipmap资源并在位图资源文件中设置android:mipMap属性或通过调用hasMipMap()来为BitmapDrawable对象启用mipmaps.

我没有看到任何有助于我理解的东西.


XML Bitmap资源具有以下android:mipMap属性:

布尔.启用或禁用mipmap提示.有关更多信息,请参见setHasMipMap().默认值为false.

就我所见,这不适用于启动器图标.


问题出现在Google网上论坛(资源名称"mipmap"的目的?!)上,Romain Guy回复道:

提供通常可以计算的更大分辨率的图像很有用(例如,在mdpi设备上,Launcher可能希望更大的hdpi图标显示大型应用程序快捷方式.)

我觉得这几乎是有意义的,但并不完全.

我仍然倾向于选择Randy Sugianto的跟进:

这有什么好处?是否有任何指南如何使用mipmap,可能是为了更好的启动器图标?


当然,维基百科有一个"Mipmap"页面,它指的是一种1983年发明的旧技术,我无法与当前的Android实现相关联.


我们现在应该将所有应用程序图标res/mipmap存储文件夹中吗?这些mipmap图像的准则是什么?


更新#1

这是一篇博文,试图解释一下.

但是该博客文章中使用的图像显示了一个包含许多徽标的文件.这不是我在Chrome的mipmap文件夹中看到的.

Chrome的mipmap-hdpi文件夹包含三张图片.一个是Chrome徽标,单独使用.

Chrome mipmap-hdpi icon.png

奇怪的是,它是72x72,而不是48x48,我希望看到.

也许这就是全部 - 我们只需要在mipmap文件夹中保留更大的图标?


更新#2

2014年10月23日的Android开发者博客文章再次证实了将mipmap文件夹用于应用程序图标的想法:

android mipmaps android-drawable

438
推荐指数
5
解决办法
18万
查看次数

建立Cordova的图标错误

使用cordova build一年之久的项目提出:

:processDebugResources
my_project/platforms/android/build/intermediates/manifests/full/debug/AndroidManifest.xml:24: error: Error: No resource found that matches the given name (at 'icon' with value '@drawable/icon').
Run Code Online (Sandbox Code Playgroud)

然后粉碎:

FAILURE: Build failed with an exception.
Run Code Online (Sandbox Code Playgroud)

任何的想法?

android-manifest cordova ionic-framework

6
推荐指数
2
解决办法
3764
查看次数