PWA Application Icons
PWAs need at least three icons: a favicon for the browser page, a device icon for the for the installed application, and an icon used on the splash screen of the installed application.
Using a Custom Icon
Vaadin uses and serves default PWA icons automatically, but you can use a custom icon.
To use a custom icon image:
Create an icon image named
icon.png
. The icon must be in PNG format.Add the image to your
src/main/webapp/icons/
folder.
Vaadin automatically scans for an image named icon.png
in the **/icons**
folder in the webapp
resources folder. It uses this image to create appropriately-sized images for different devices. If no icon is found, the default image is used as a fallback.
To ensure that all resized images are attractive, use an image of at least 512 x 512 pixels. This is large enough to only be downscaled, as upscaling can cause pixelation.
Overriding Generated Icons
All generated images are named using the icon-*[width]x[height]*.png
notation, for example icon-1125x2436.png
.
To override any generated image:
Create an image of the size you want to override and name in using the notation mentioned above. For example,
icon-1125x2436.png
for a custom hi-res splash screen image for iOS devices.Add the image to your
src/main/webapp/icons/
folder.
Renaming Icons
You can change the default icon path to a custom path, using the iconPath
parameter in the @PWA
annotation.
Example: Defining a custom path using the iconPath
parameter in the @PWA
annotation.
Java
@PWA(name = "My Progressive Web Application",
shortName = "MyPWA",
iconPath = "img/icons/logo.png")
Icon images will now be:
Named using the value in the
iconPath*
parameter. For example the 512 x 512 pixel image would beimg/icons/logo-512x512.png
.Stored in the
src/main/webapp/img/icons/
folder.