Having both watchOS 26 and watchOS 11 icons

I'm trying to update the icon of my app for watchOS 26, and I'm having troubles providing both a layered Liquid Glass icon for watchOS 26 users and a pre-rendered bitmap icon (in various sizes) for watchOS 11 and older users. Whatever I do; I either get a blurry, scaled-down watchOS 26 icon on watchOS 11; or watchOS 11's bitmap icons on watchOS 26.

While I could get the wanted result on macOS 26 and iOS 26, I simply can't get an equivalent result with watchOS 26.

How can you get the wanted result on macOS 26? I was not able to provide glass icons for macOS26 while setting pre-rendered icons for macOS 15 and earlier. Xcode always forces Icon Composer rendered variants for older macOS versions instead of the icons I provide in the Asset Catalog.

https://developer.apple.com/forums/thread/794485

(sorry for the somewhat tangential comment and not being able to help with your original issue - but I think the macOS and watchOS situations are related - Xcode does not seem to allow developers to provide their own icons for older OS versions when an Icon Composer icon is present).

For macOS I simply use an .icns file, and keep the Asset Catalog with only iconstack-based icons.

For macOS I simply use an .icns file, and keep the Asset Catalog with only iconstack-based icons.

If you want proper glass icons, this approach won't work.

In Xcode 26 beta3 one could indeed use Image Composer icons for Tahoe and also let an .incs file be generated based on the App Icon image stack in the Asset Catalog. That gave Tahoe full glass icon support while older macOS versions took the icons from the .incs file (instead of the Assets.car file). However this was apparently just a bug, made possible by the fact that Xcode added only the 1024x1024 legacy render of the Icon Composer icon to Assets.car's image stack, leaving room for older macOS versions to fallback to the .incs file which is always generated (even in beta4) using the Asset Catalog App Icon.

Since beta4 however if an Icon Composer icon is present, the image stack in Assets.car contains all Icon Composer assets and color data, bundled with all size variants of a rendered version, using the standard legacy icon format (using the old corner radius). Because of this even though the .incs file is there and is still generated based on the Asset Catalog's App Icon image stack, it is not used by legacy macOS versions - macOS always prefers the Asset Catalog icons (no fallback is happening to the .incs file).

I use a pre-compiled CAR file that has the pre-rendered Icon-Composer bitmaps stripped, so macOS 15 and older use the .icns file instead of the CAR assets.

I did manage to solve this for both iOS and watchOS 26 similarly, but it's a lot more complex – I merged the pre-26 and 26 CAR files into a single CAR file so it includes both manually created, multi-resolution bitmaps for iOS 18 and watchOS 11 and the iOS/watchOS 26 iconstack-based icons.

Unfortunately, Apple does not provide any good tooling for CAR files so it had to be done manually, but thankfully I'm highly familiar the CAR format and its internal formats (I've messed with its internals a lot since 2014), so it wasn't that bad.

Nice! I also tried to replace the generated pngs in the Image Stack found in the CAR file, but gave up after a few rounds.

I found that the icon with the same ID has all the Icon Composer assets, and the 16x16, 32x32... png variants of the rendered Icon Composer images (with the wrong corner radius) for older macOS versions. Although I could get these details using assetutil I was not able to replace or remove the images (the assetutil just does not have the right filters to somehow get rid of them). I tried looking at it using a hex editor and although I could locate the images, I don't know how to edit the CAR file in a way that it remains valid.

If you have a workflow to replace/update specific images in a CAR file that can be shared with others, or can point to a tool, let us know! :) Thank you!

Having both watchOS 26 and watchOS 11 icons
 
 
Q