When comparing the Assets.car file of the previous and current versions of my app, compiled with Xcode 16 and 26, respectively, with the Terminal command
assetutil --info MyApp.app/Contents/Resources/Assets.car
I see that the new version contains many more app icons at different sizes, increasing my app's size by 1 MB (not much, but considering that the app is only 6 MB in total...):
{
"AssetType" : "MultiSized Image",
"Name" : "AppIcon",
"NameIdentifier" : 6849,
"Scale" : 1,
"SHA1Digest" : "9D75F76992E9E9E5531A214A4AE282EBD381F7EB903024E00FB25EB42381CC45",
"SizeOnDisk" : 308,
"Sizes" : [
"16x16 index:1 idiom:universal",
"32x32 index:2 idiom:universal",
"64x64 index:3 idiom:universal",
"128x128 index:4 idiom:universal",
"256x256 index:5 idiom:universal",
"512x512 index:6 idiom:universal",
"1024x1024 index:7 idiom:universal"
]
}
The previous one allowed me to add only two sizes:
{
"AssetType" : "MultiSized Image",
"Name" : "AppIcon",
"NameIdentifier" : 6849,
"Scale" : 1,
"SHA1Digest" : "AC782A2FFF9A4B2D563EF64DF41A179583440560F8732A176A8376B31000368E",
"SizeOnDisk" : 248,
"Sizes" : [
"256x256 index:1 idiom:universal",
"512x512 index:2 idiom:universal"
]
}
Is there a way to only ship the strictly necessary app icons sizes while using Xcode 26 Icon Composer, or will all the sizes be required going forward?
Icon Composer
RSS for tagIcon Composer lets you create multi-layered icons out of Liquid Glass from a single design file.
Posts under Icon Composer tag
39 Posts
Selecting any option will automatically load the page
Post
Replies
Boosts
Views
Activity
Hi everyone,
we are currently facing an issue with one of our apps regarding the new icon requirements in iOS 26.
• We created the app icon using Apple’s Icon Composer.
• On the device, everything works perfectly: the app icon is shown on the home screen, and it can also be customized with the new iOS 26 features (colors, transparency, etc.).
• However, in TestFlight the app icon is not displayed at all (in the TestFlight app on the device).
• In App Store Connect, the icon is also not shown in the overview for the app. Interestingly, within the list of TestFlight builds in App Store Connect the icon is visible.
What we have tried so far:
• Created an archive and manually uploaded it to App Store Connect → no icon in TestFlight.
• Took the working Icon Composer asset from another app target where everything works correctly, deleted the old one in this project, and copied the working asset into the problematic target. → Same behavior: visible on the device, but still missing in TestFlight and App Store Connect overview.
In contrast, in another app (using the same workflow and also Icon Composer), everything works perfectly: the icon shows up on the device, in TestFlight, and in App Store Connect.
Has anyone experienced a similar situation? Is there something specific that needs to be set in App Store Connect (e.g. Marketing Icon / Branding section), or could this be related to the new iOS 26 icon handling?
Any help or hints would be greatly appreciated.
Thanks in advance!
Topic:
App Store Distribution & Marketing
SubTopic:
App Store Connect
Tags:
App Store Connect
TestFlight
Icon Composer
We’ve been using the new Icon Composer–generated app icons for our existing universal bundle (iOS + Mac Catalyst) app. The icons work perfectly for iOS on the App Store.
On macOS Tahoe (macOS 26), however, the App Store listing doesn’t display the app icon — it just shows placeholder while downloading. After the app is installed, the icon displays fine everywhere (Dock, Finder, Launchpad, etc.).
Setup:
using .iconset generated via Icon Composer, bundled with .png inside the .icon file.
On older macOS App Stores, the app icon shows as expected.
On Tahoe App Store only, the issue appears.
Could this be because the App Store expects .svg variants inside the .icon file for proper display in the Store? Or is there any updated requirement for Mac App Store metadata icons vs. bundled app icons?
Any guidance would be much appreciated.
Is there a way to access an Icon Composer .icon file in Swift or Objective-C? Any way to get this in an NSImage object that I can display in an image view? Thanks.
Hello,
I recently updated my app’s icon to use the new Liquid Glass style by adding an .icon file created with Icon Composer to my project.
Previously, I had two image sets (light and dark versions of the app icon), and I’d implemented a settings option that let users either manually select their preferred icon, or let the app automatically switch between light/dark based on the system appearance.
Is there a way to achieve the same behavior with the new Liquid Glass .icon file?Specifically, can I programmatically override the system-selected Liquid Glass dock icon and force a particular variant?
Thank you.
Hello everyone,
I'm very impressed with the Liquid Glass design introduced in iOS 26, especially how native app icons automatically adapt to the system's display mode (dark or light).
This brings me to a question: Is it possible to make a website shortcut icon created via Safari's "Add to Home Screen" feature adapt to Dark Mode in the same way?
For native apps, we can use tools like Icon Composer and asset catalogs (Assets.xcassets) to provide different icons for each mode. It would be a huge improvement for web clips if we could achieve the same with existing web technologies like apple-touch-icon or the Web App Manifest.
If anyone has figured out a way to do this, I would greatly appreciate it if you could share your knowledge.
Thanks in advance!
日本語の原文:
iOS 26から導入されたLiquid Glassデザインについて。
ネイティブアプリのアイコンがシステムの表示モード(ダークモード/ライトモード)に合わせて自動で最適化されるようになりました。
そこで疑問に思ったのですが、Safariから「ホーム画面に追加」機能を使って作成するWebサイトのショートカットアイコンは、ネイティブアプリと同じようにダークモードに対応できないのでしょうか?
ネイティブアプリの場合は、Icon Composerなどのツールでアセットカタログ(Assets.xcassets)を使い、モードごとのアイコンを用意できますよね。
Web側でも、apple-touch-iconやWeb App Manifestといった既存の仕組みを使って、アイコンを動的に切り替えられるようになると、Webクリップの使い勝手がさらに向上すると思うのですが
もし、すでに何らかの方法で対応されている方がいらっしゃれば、ぜひその知見を共有していただけると嬉しいです。
I just played around on macOS with the new icons created by Icon Composer, and I noticed that the Dock displays programmatically set icons differently. Try this:
Make sure you have the Mail app in your Dock.
Set the icon appearance to "Tinted/Light" and set a dark (black) background for the Desktop.
Run this code:
let image = NSWorkspace.shared.icon(forFile: "/System/Applications/Mail.app")
if image.isValid { NSApp.applicationIconImage = image }
You'll get something like this:
When the icon appearance is set to "Default" or "Dark," everything works as expected, and the "Clear/Dark" and "Tinted/Dark" modes seem to work as well. It seems like the Dock uses a special blend mode depending on the selected background, but this does not seem to be the case if the icon is set programmatically. I filed feedback FB20291186.
I made a new app icon with Icon Composer, and added it to my Xcode project. In the built app, I see AppIcon.icon next to the old AppIcon.icns. But Tahoe is not showing the new icon. Is this because Tahoe has cached the old icon somewhere, and if so, is there some way to make it refresh?
Title basically explains what my issue is, from what I understand the only way to set an icon in an tauri app is using a icns file, I could be wrong but I don't know how to get macos theme changing stuff to work with it because of the icns file.
This started with Xcode 26 beta 7, however it has continued to occur with the release candidate. Whenever I try to compile our asset catalog + icon composer icon for our AppKit/SwiftUI-based macOS app, actool fails with the following exception:
*** Terminating app due to uncaught exception 'IBPlatformToolFailureException', reason: 'The tool closed the connection (AssetCatalogAgent-AssetRuntime)
Last command:
_ON_QUEUE_sendMessage:toChannelReturningError:during:
Backtrace of last command:
0 -[IBAbstractPlatformToolProxy _ON_QUEUE_sendMessage:toChannelReturningError:during:] (in IDEInterfaceBuilderKit)
1 __74-[IBAbstractPlatformToolProxy sendMessage:toChannelReturningError:during:]_block_invoke (in IDEInterfaceBuilderKit)
2 _dispatch_client_callout (in libdispatch.dylib)
3 _dispatch_lane_barrier_sync_invoke_and_complete (in libdispatch.dylib)
4 DVTDispatchSync (in DVTFoundation)
5 -[IBAbstractPlatformToolProxy sendMessage:toChannelReturningError:during:] (in IDEInterfaceBuilderKit)
6 -[AssetCatalogRemoteAgentProxy compileItemsWithCatalogRelativeIdentifierPaths:tagSolutionSpace:andStickerPacksWithCatalogRelativeIdentifierPaths:options:] (in IDEInterfaceBuilderCocoaTouchIntegration)
7 -[IBICLARToolCARCompiler compileCARItems:tagSolutionSpace:options:queue:completionHandler:] (in AssetCatalogCocoaTouchKit)
8 -[IBICAbstractPlatformAdapter compileCARItems:tagSolutionSpace:options:queue:completionHandler:] (in AssetCatalogFoundation)
9 __84-[IBICAbstractPlatformAdapter compileSelectedItems:options:queue:completionHandler:]_block_invoke (in AssetCatalogFoundation)
10 __93-[IBICAbstractPlatformAdapter compileStandaloneCatalogItems:options:queue:completionHandler:]_block_invoke (in AssetCatalogFoundation)
11 __DVT_CALLING_CLIENT_BLOCK__ (in DVTFoundation)
12 __DVTDispatchAsync_block_invoke (in DVTFoundation)
13 _dispatch_call_block_and_release (in libdispatch.dylib)
14 _dispatch_client_callout (in libdispatch.dylib)
15 _dispatch_main_queue_drain.cold.5 (in libdispatch.dylib)
16 _dispatch_main_queue_drain (in libdispatch.dylib)
17 _dispatch_main_queue_callback_4CF (in libdispatch.dylib)
18 __CFRUNLOOP_IS_SERVICING_THE_MAIN_DISPATCH_QUEUE__ (in CoreFoundation)
19 __CFRunLoopRun (in CoreFoundation)
20 CFRunLoopRunSpecific (in CoreFoundation)
21 -[NSRunLoop(NSRunLoop) runMode:beforeDate:] (in Foundation)
22 -[NSRunLoop(DVTNSRunLoopAdditions) dvt_spinRunLoopInMode:whileQueue:executesAsynchronously:] (in DVTFoundation)
23 -[NSRunLoop(DVTNSRunLoopAdditions) dvt_spinRunLoopInMode:whileBlockExecutesConcurrently:] (in DVTFoundation)
24 -[NSRunLoop(DVTNSRunLoopAdditions) dvt_spinRunLoopInMode:waitingForSemaphore:] (in DVTFoundation)
25 -[IBCLIImageCatalogToolPersona compileCatalogCollection:withPlatformAdapter:arguments:outputDictionary:] (in ibtoold)
26 -[IBCLIImageCatalogToolPersona invokeArguments:outputDictionary:] (in ibtoold)
27 -[IBCLIImageCatalogToolPersona runSingleInvocation:outputtingToFileHandle:andVerifyingEnvironment:] (in ibtoold)
28 IBCLIServerRunSingleInvocation (in ibtoold)
29 __IBCLIServerRunSingleInvocationWithIODirectedAtPipesAndUnlinkOnSuccess_block_invoke_2 (in ibtoold)
30 __IBCLIServerRunSingleInvocationWithIODirectedAtPipesAndUnlinkOnSuccess_block_invoke (in ibtoold)
31 -[IBCLIErrorForwarder forwardErrorOutputToDescriptor:whileInvokingBlock:] (in ibtoold)
32 IBCLIServerRunSingleInvocationWithIODirectedAtPipesAndUnlinkOnSuccess (in ibtoold)
33 main (in ibtoold)
34 start (in dyld)
I can't seem to get it to compile consistently — it works fine locally.
I would ❤️ a workaround, otherwise I'm not sure that we'll be able to ship an update to our app for macOS 26.
FB20183399
Several app developers are struggling with the inability to provide a separate app icons that looks nice on older macOS versions while at the same time provide Icon Composer icons that look great on macOS Tahoe 26. An ability to provide separate icons is super important to those who have app icons that follow the curvature of the default icon borders (as the corner rounding radius is different for Sequia and Tahoe). Take a look at this for example:
https://github.com/ghostty-org/ghostty/issues/7564#issuecomment-3042061547
Question: Is there a definitive/recommended way to address this issue? How can a developer add a glass icon variant that looks good on Tahoe and provide a bitmap icon for older macOS versions?
Some background info:
Prior to Xcode 26 beta 4, one could add an App Icon to Assets to be used as app icon for legacy macOS versions (Sequia and older) and use a new Icon Composer icon (placed in the project root) for macOS Tahoe 26. Enabling "Include all app icon assets" under target settings ensured that older macOS versions would use the old app icons while Tahoe the new Icon Composer glass one.
Since Xcode beta 4 this technique no longer works. Xcode instead insists on populating Assets.car with Icon Composer generated variants, disregarding the App Icon provided in Assets. Although the App Icon in Assets makes its way to a .incs file in the app bundle's Contents/Resources folder, but that is not used by macOS anymore and is there for some compatibility purposes. The Assets.car file (which matters) only contains the variants generated by Icon Composer and does not contain the png icons provided in the Assets.
When creating an icon using icon composer, I cant upload a build to testflight/App Store connect.
Running on device from Xcode works fine, but as soon as I archive and upload to App Store Connect, I get an error saying the icon contains an alpha channel
I am getting this warning when compiling: Failed to generate flattened icon stack for icon named ...
Is it safe to ignore it? Is there a way to fix it?
Thank you.
Hi, I'm experiencing a super weird and unexpected issue using Icon Composer (Version 1.0 (40)) and Xcode 26 beta 7.
I have an icon that includes some minimal text in the icon, as part of the branding of the app. The text is an SVG layer in Icon Composer. Icon Composer has no idea this is text, just a regular SVG layer.
When I import the resulting .icon file into Xcode, it appears correct in the Xcode preview.
However, when building the app and installing it on the iOS 26 simulator, the font of the text in the icon changes (to the system default font?). It is also cropped, cut off, and off-center.
I replicated this with a simple standalone icon and clean project.
Is anyone else seeing this?
A new version of the Configuring your app to use alternate app icons sample code is available for download.
The sample uses Icon Composer files and supports iOS 18 or later.
I am trying to validate my update for my app to be ready for iOS 26 with the new Icon Composer .icon file. Everywhere I read says that the old AppIcon in the assets folder wouldnt be used and to just drop the .icon file in the project navigator and link it properly. I do that and its still asking for a .png file; I add the 1024x1024 .png file and its still not working. I am very lost and dont know where to go from here I have both the .icon and .png app icons in there. My app deployment target is at iOS 26, Xcode Project format 16.3 (I dont see 26 so assuming 16.3 is the highest). I feel I have done all the things, and advice? Thanks in advance!
Topic:
Developer Tools & Services
SubTopic:
Xcode
Tags:
App Store Connect
App Submission
Icon Composer
App Icon created with Icon Composer is empty for visionOS app
We are developing a universal app, and the app’s icon was created using Icon Composer.
Xcode 26, RC
visionOS 26 and visionOS 2.5
App Icons on macOS, iOS, and iPadOS are correct
We have archived the app for macOS and iOS and successfully uploaded it to the App Store.
This strongly suggests that the App Icon configuration in our project settings is correct for these platforms.
App Icon issue on visionOS
However, the visionOS app icon is not working as expected:
When testing on the Vision Pro simulator (versions 2.x and 26.0), the app icon appears empty.
When archiving and submitting to the App Store, the process fails with the following error:
The app’s Info.plist file is missing the CFBundleIcons.CFBundlePrimaryIcon key for the visionOS App Icon.
This suggests that the project’s App Icon settings may not be correctly applied for visionOS builds.
Request for assistance
We are preparing to release our app, one of the first to support Liquid Glass, and would greatly appreciate guidance on how to resolve this issue with the visionOS app icon.
FB20184218
If I use the new beta Icon Composer to make a .icon file for a macOS app, will it work for any macOS versions before 26? If not, can one build with both the .icon and the older asset collection icon?
This app icon features multiple layers with the blend mode set to Screen. iOS fails to render these despite looking perfectly fine in Icon Composer.
This is unacceptable. How can a designer build an icon if they can't rely on it being displayed like the preview on a device?
Filed as FB20052048 with the .icon file attached.
Hi Guys, I noticed that with Icon Composer when you export the icon it does not export a square image, is there any way of doing it or that's how it is now?
Checking the icon on the iPhone something doesn't seem right...