使用 <maskable-icon> 创建自适应图标
Creating Adaptive Icons with <maskable-icon>
我正在尝试使用本指南进行实施:
https://developer.android.com/preview/features/adaptive-icons.html#Creating
用于 Android O 预览,但启动器显示默认的 Android 图标,而不是 ic_launcher.xml
中指示的两个图层
ic_launcher.xml
<maskable-icon>
<background android:drawable="@mipmap/layer0"/>
<foreground android:drawable="@mipmap/layer1"/>
</maskable-icon>
有人试过实现这个吗?或者仍然不可用?
(在我的清单中,我将 ic_launcher.xml 放在图标中)
更新:
Google 更新您的网站并将 adaptive-icon
改为 maskable-icon
你是不是忘记在清单中定义它了?
<application
...
android:icon="@mipmap/ic_launcher"
...>
...
</application>
我在查看下面的文件时找到了答案。
\android-sdk-windows\platforms\android-O\data\res\drawable\sym_def_app_icon.xml
<?xml version="1.0" encoding="utf-8"?>
<adaptive-icon xmlns:android="http://schemas.android.com/apk/res/android">
<background android:drawable="@android:color/white" />
<foreground android:drawable="@mipmap/sym_def_app_icon_maskable" />
</adaptive-icon>
我不知道哪个最终是对的。
但是现在(预览版 1),自适应图标标签似乎可以正常工作。
您可能还需要将此添加到您的 AndroidManifest.xml 文件中:
android:roundIcon="@mipmap/ic_launcher_round"
我正在尝试使用本指南进行实施:
https://developer.android.com/preview/features/adaptive-icons.html#Creating
用于 Android O 预览,但启动器显示默认的 Android 图标,而不是 ic_launcher.xml
中指示的两个图层ic_launcher.xml
<maskable-icon>
<background android:drawable="@mipmap/layer0"/>
<foreground android:drawable="@mipmap/layer1"/>
</maskable-icon>
有人试过实现这个吗?或者仍然不可用?
(在我的清单中,我将 ic_launcher.xml 放在图标中)
更新:
Google 更新您的网站并将 adaptive-icon
改为 maskable-icon
你是不是忘记在清单中定义它了?
<application
...
android:icon="@mipmap/ic_launcher"
...>
...
</application>
我在查看下面的文件时找到了答案。
\android-sdk-windows\platforms\android-O\data\res\drawable\sym_def_app_icon.xml
<?xml version="1.0" encoding="utf-8"?>
<adaptive-icon xmlns:android="http://schemas.android.com/apk/res/android">
<background android:drawable="@android:color/white" />
<foreground android:drawable="@mipmap/sym_def_app_icon_maskable" />
</adaptive-icon>
我不知道哪个最终是对的。 但是现在(预览版 1),自适应图标标签似乎可以正常工作。
您可能还需要将此添加到您的 AndroidManifest.xml 文件中:
android:roundIcon="@mipmap/ic_launcher_round"