A year ago I analyzed how many built-in apps in iOS 10.1 and macOS 10.12 were using Swift: Apple’s use of Swift in iOS 10.1 and macOS 10.12.

How many built-in apps are using Swift in iOS 11.1 and macOS 10.13.1? Let’s find it out!

Tool to detect binaries using Swift

Last year I explained how to write a script that loops through all the files of a folder and print the paths of binaries using Swift. You can read all this information as well as download the complete script in the old post: Apple’s use of Swift in iOS 10.1 and macOS 10.12.

Apple’s use of Swift in iOS 11.1

Running the script on iOS 11.1 (15B93) of an iPhone X will give you this list of binaries:

/Applications/ActivityMessagesApp.app/PlugIns/ActivityMessagesExtension.appex/ActivityMessagesExtension
/Applications/AppStore.app/AppStore
/Applications/AppStore.app/Frameworks/AppStoreKit.framework/AppStoreKit
/Applications/AppStore.app/PlugIns/AppInstallExtension.appex/AppInstallExtension
/Applications/AppStore.app/PlugIns/BridgeStoreExtension.appex/BridgeStoreExtension
/Applications/AppStore.app/PlugIns/ProductPageExtension.appex/ProductPageExtension
/Applications/BusinessExtensionsWrapper.app/PlugIns/Business.appex/Business
/Applications/Diagnostics.app/Diagnostics
/Applications/FTMInternal-4.app/FTMInternal-4
/private/var/staged_system_apps/Calculator.app/Calculator
/private/var/staged_system_apps/Files.app/Files
/private/var/staged_system_apps/Files.app/PlugIns/RecentsWidget.appex/RecentsWidget
/private/var/staged_system_apps/Music.app/Music
/private/var/staged_system_apps/Music.app/PlugIns/MusicMessagesApp.appex/MusicMessagesApp
/private/var/staged_system_apps/Music.app/PlugIns/RecentlyPlayedTodayExtension.appex/RecentlyPlayedTodayExtension
/private/var/staged_system_apps/News.app/Frameworks/Tea.framework/Tea
/private/var/staged_system_apps/Podcasts.app/Frameworks/AppStoreKit.framework/AppStoreKit
/private/var/staged_system_apps/Podcasts.app/Frameworks/NowPlayingUI.framework/NowPlayingUI
/private/var/staged_system_apps/Podcasts.app/Frameworks/PodcastsUI.framework/PodcastsUI
/private/var/staged_system_apps/Podcasts.app/Podcasts
/System/Library/Accounts/Notification/DonationAccountWatcher.bundle/DonationAccountWatcher
/System/Library/Frameworks/FileProvider.framework/PlugIns/LocalStorageFileProvider.appex/LocalStorageFileProvider
/System/Library/Frameworks/IdentityLookup.framework/XPCServices/com.apple.IdentityLookup.MessageFilter.xpc/com.apple.IdentityLookup.MessageFilter
/System/Library/Messages/iMessageBalloons/ASMessagesProvider.bundle/ASMessagesProvider
/System/Library/PrivateFrameworks/ContactsDonation.framework/Versions/A/Support/contactsdonationagent
/System/Library/PrivateFrameworks/DocumentManagerUICore.framework/PlugIns/RecentsAppPopover.appex/RecentsAppPopover
/System/Library/PrivateFrameworks/DocumentManagerUICore.framework/PlugIns/com.apple.DocumentManager.Service.appex/com.apple.DocumentManager.Service
/System/Library/PrivateFrameworks/Swift/libswiftDemangle.dylib
/System/Library/PrivateFrameworks/Swift/libswiftRemoteMirror.dylib
/System/Library/PrivateFrameworks/TelephonyUtilities.framework/PlugIns/IntentHandler.appex/IntentHandler
/System/Library/PrivateFrameworks/TelephonyUtilities.framework/callservicesd
/System/Library/PrivateFrameworks/UpNextWidget.framework/PlugIns/UpNext.appex/UpNext
/usr/libexec/tzd

With no surprise the dyld shared cache contains these additional binaries:

/System/Library/PrivateFrameworks/CoreKnowledge.framework/CoreKnowledge
/System/Library/PrivateFrameworks/Swift/libswiftAccelerate.dylib
/System/Library/PrivateFrameworks/Swift/libswiftARKit.dylib
/System/Library/PrivateFrameworks/Swift/libswiftAssetsLibrary.dylib
/System/Library/PrivateFrameworks/Swift/libswiftAVFoundation.dylib
/System/Library/PrivateFrameworks/Swift/libswiftCallKit.dylib
/System/Library/PrivateFrameworks/Swift/libswiftCloudKit.dylib
/System/Library/PrivateFrameworks/Swift/libswiftContacts.dylib
/System/Library/PrivateFrameworks/Swift/libswiftCore.dylib
/System/Library/PrivateFrameworks/Swift/libswiftCoreAudio.dylib
/System/Library/PrivateFrameworks/Swift/libswiftCoreData.dylib
/System/Library/PrivateFrameworks/Swift/libswiftCoreFoundation.dylib
/System/Library/PrivateFrameworks/Swift/libswiftCoreGraphics.dylib
/System/Library/PrivateFrameworks/Swift/libswiftCoreImage.dylib
/System/Library/PrivateFrameworks/Swift/libswiftCoreLocation.dylib
/System/Library/PrivateFrameworks/Swift/libswiftCoreMedia.dylib
/System/Library/PrivateFrameworks/Swift/libswiftDarwin.dylib
/System/Library/PrivateFrameworks/Swift/libswiftDispatch.dylib
/System/Library/PrivateFrameworks/Swift/libswiftFoundation.dylib
/System/Library/PrivateFrameworks/Swift/libswiftGameplayKit.dylib
/System/Library/PrivateFrameworks/Swift/libswiftGLKit.dylib
/System/Library/PrivateFrameworks/Swift/libswiftHomeKit.dylib
/System/Library/PrivateFrameworks/Swift/libswiftIntents.dylib
/System/Library/PrivateFrameworks/Swift/libswiftMapKit.dylib
/System/Library/PrivateFrameworks/Swift/libswiftMediaPlayer.dylib
/System/Library/PrivateFrameworks/Swift/libswiftModelIO.dylib
/System/Library/PrivateFrameworks/Swift/libswiftObjectiveC.dylib
/System/Library/PrivateFrameworks/Swift/libswiftos.dylib
/System/Library/PrivateFrameworks/Swift/libswiftPhotos.dylib
/System/Library/PrivateFrameworks/Swift/libswiftQuartzCore.dylib
/System/Library/PrivateFrameworks/Swift/libswiftSceneKit.dylib
/System/Library/PrivateFrameworks/Swift/libswiftsimd.dylib
/System/Library/PrivateFrameworks/Swift/libswiftSpriteKit.dylib
/System/Library/PrivateFrameworks/Swift/libswiftSwiftOnoneSupport.dylib
/System/Library/PrivateFrameworks/Swift/libswiftUIKit.dylib
/System/Library/PrivateFrameworks/Swift/libswiftWatchKit.dylib

Apple’s use of Swift in macOS 10.13.1

Running the script on macOS 10.13.1 will give you this list of binaries:

/Applications/Utilities/Console.app/Contents/MacOS/Console
/System/Library/Accounts/Notification/DonationAccountWatcher.bundle/Contents/MacOS/DonationAccountWatcher
/System/Library/CoreServices/ControlStrip.app/Contents/MacOS/ControlStrip
/System/Library/CoreServices/ControlStrip.app/Contents/XPCServices/com.apple.DFRSystemExtra.NightShift.xpc/Contents/MacOS/com.apple.DFRSystemExtra.NightShift
/System/Library/CoreServices/Dock.app/Contents/MacOS/Dock
/System/Library/CoreServices/MRT.app/Contents/Frameworks/libswiftAppKit.dylib
/System/Library/CoreServices/MRT.app/Contents/Frameworks/libswiftCore.dylib
/System/Library/CoreServices/MRT.app/Contents/Frameworks/libswiftCoreData.dylib
/System/Library/CoreServices/MRT.app/Contents/Frameworks/libswiftCoreGraphics.dylib
/System/Library/CoreServices/MRT.app/Contents/Frameworks/libswiftCoreImage.dylib
/System/Library/CoreServices/MRT.app/Contents/Frameworks/libswiftDarwin.dylib
/System/Library/CoreServices/MRT.app/Contents/Frameworks/libswiftDispatch.dylib
/System/Library/CoreServices/MRT.app/Contents/Frameworks/libswiftFoundation.dylib
/System/Library/CoreServices/MRT.app/Contents/Frameworks/libswiftIOKit.dylib
/System/Library/CoreServices/MRT.app/Contents/Frameworks/libswiftObjectiveC.dylib
/System/Library/CoreServices/MRT.app/Contents/Frameworks/libswiftQuartzCore.dylib
/System/Library/CoreServices/MRT.app/Contents/Frameworks/libswiftSwiftOnoneSupport.dylib
/System/Library/CoreServices/MRT.app/Contents/Frameworks/libswiftXPC.dylib
/System/Library/CoreServices/MRT.app/Contents/MacOS/MRT
/System/Library/CoreServices/NotificationCenter.app/Contents/MacOS/NotificationCenter
/System/Library/CoreServices/OSDUIHelper.app/Contents/MacOS/OSDUIHelper
/System/Library/CoreServices/PIPAgent.app/Contents/MacOS/PIPAgent
/System/Library/CoreServices/screencapturetb.app/Contents/MacOS/screencapturetb
/System/Library/CoreServices/TouchBarEvent.bundle
/System/Library/CoreServices/UAUPlugins/DockUpdater.bundle/Contents/MacOS/DockUpdater
/System/Library/CoreServices/UAUPlugins/InternationalAccountUpdater.bundle/Contents/MacOS/InternationalAccountUpdater
/System/Library/CoreServices/UAUPlugins/SpacesUpdater.bundle/Contents/MacOS/SpacesUpdater
/System/Library/PrivateFrameworks/ContactsDonation.framework/Versions/A/Support/contactsdonationagent
/System/Library/PrivateFrameworks/CoreKnowledge.framework/Versions/A/CoreKnowledge
/System/Library/PrivateFrameworks/Swift/libswiftAccelerate.dylib
/System/Library/PrivateFrameworks/Swift/libswiftAppKit.dylib
/System/Library/PrivateFrameworks/Swift/libswiftAVFoundation.dylib
/System/Library/PrivateFrameworks/Swift/libswiftCloudKit.dylib
/System/Library/PrivateFrameworks/Swift/libswiftContacts.dylib
/System/Library/PrivateFrameworks/Swift/libswiftCore.dylib
/System/Library/PrivateFrameworks/Swift/libswiftCoreAudio.dylib
/System/Library/PrivateFrameworks/Swift/libswiftCoreData.dylib
/System/Library/PrivateFrameworks/Swift/libswiftCoreFoundation.dylib
/System/Library/PrivateFrameworks/Swift/libswiftCoreGraphics.dylib
/System/Library/PrivateFrameworks/Swift/libswiftCoreImage.dylib
/System/Library/PrivateFrameworks/Swift/libswiftCoreLocation.dylib
/System/Library/PrivateFrameworks/Swift/libswiftCoreMedia.dylib
/System/Library/PrivateFrameworks/Swift/libswiftCryptoTokenKit.dylib
/System/Library/PrivateFrameworks/Swift/libswiftDarwin.dylib
/System/Library/PrivateFrameworks/Swift/libswiftDemangle.dylib
/System/Library/PrivateFrameworks/Swift/libswiftDispatch.dylib
/System/Library/PrivateFrameworks/Swift/libswiftFoundation.dylib
/System/Library/PrivateFrameworks/Swift/libswiftGameplayKit.dylib
/System/Library/PrivateFrameworks/Swift/libswiftGLKit.dylib
/System/Library/PrivateFrameworks/Swift/libswiftIntents.dylib
/System/Library/PrivateFrameworks/Swift/libswiftIOKit.dylib
/System/Library/PrivateFrameworks/Swift/libswiftMapKit.dylib
/System/Library/PrivateFrameworks/Swift/libswiftModelIO.dylib
/System/Library/PrivateFrameworks/Swift/libswiftObjectiveC.dylib
/System/Library/PrivateFrameworks/Swift/libswiftOpenCL.dylib
/System/Library/PrivateFrameworks/Swift/libswiftos.dylib
/System/Library/PrivateFrameworks/Swift/libswiftQuartzCore.dylib
/System/Library/PrivateFrameworks/Swift/libswiftRemoteMirror.dylib
/System/Library/PrivateFrameworks/Swift/libswiftSafariServices.dylib
/System/Library/PrivateFrameworks/Swift/libswiftSceneKit.dylib
/System/Library/PrivateFrameworks/Swift/libswiftsimd.dylib
/System/Library/PrivateFrameworks/Swift/libswiftSpriteKit.dylib
/System/Library/PrivateFrameworks/Swift/libswiftSwiftOnoneSupport.dylib
/System/Library/PrivateFrameworks/Swift/libswiftXPC.dylib
/System/Library/PrivateFrameworks/TelephonyUtilities.framework/callservicesd
/System/Library/PrivateFrameworks/TelephonyUtilities.framework/PlugIns/IntentHandler.appex/Contents/MacOS/IntentHandler
/usr/bin/swift
/usr/bin/swiftc
/usr/libexec/TouchBarServer
/usr/libexec/tzd
/usr/sbin/screencapture
/usr/sbin/usernoted

Note that you will get a lot of matches in Xcode 9.0.

Conclusion

On iOS 10.1 there were only 4 binaries using Swift. The number of apps and frameworks using Swift grew quite a lot in a year: There are now 20 apps and frameworks using Swift in iOS 11.1:

iOS 10.1 iOS 11.1 Notes
- ActivityMessagesApp.app iMessage Activity app
- AppStore.app AppStore
- BusinessExtensionsWrapper.app ?
Calculator.app Calculator.app Calculator - iPhone only
- Diagnostics.app Hidden Diagnostics app
- FTMInternal-4.app FieldTestMenu for connectivity tests
- Files.app Files
Music.app Music.app Music
- News.app News
- Podcasts.app Podcasts
- ASMessagesProvider.bundle AppStore Messages Provider
- ContactsDonation.framework Apple Pay Cash?
CoreKnowledge.framework CoreKnowledge.framework User behaviors?
- DocumentManagerUICore.framework Files
- DonationAccountWatcher Apple Pay Cash?
- FileProvider.framework Files
- IdentityLookup.framework ?
UpNextWidget.framework UpNextWidget.framework Calendar widget
- TelephonyUtilities.framework Telephony
- /usr/libexec/tzd TimeZone Daemon

Similarly the number of binaries using Swift grew from 10 in macOS 10.12.1 to 23 in macOS 10.13.1:

macOS 10.12.1 macOS 10.13.1 Notes
Console.app Console.app Console
- ControlStrip.app TouchBar
Dock.app Dock.app Dock
MRT.app MRT.app Malware Removal Tool
NotificationCenter.app NotificationCenter.app Notification Center
OSDUIHelper.app OSDUIHelper.app On Screen Display UI Helper
PIPAgent.app PIPAgent.app Picture in Picture
- screencapturetb.app Capture screenshots
(Xcode.app) (Xcode.app) Developer tools
- ContactsDonation.framework Apple Pay Cash?
- CoreKnowledge.framework User behaviors?
- DockUpdater.bundle Migrate Dock Preferences?
- DonationAccountWatcher.bundle Apple Pay Cash?
- InternationalAccountUpdater.bundle Migrate International Preferences?
- SpacesUpdater.bundle Migrate Hotkeys Preferences?
- TelephonyUtilities.framework Telephony
- TouchBarEvent.bundle TouchBar
/usr/bin/swift /usr/bin/swift Swift compiler
/usr/bin/swiftc /usr/bin/swiftc Swift compiler
- /usr/libexec/TouchBarServer TouchBar
- /usr/libexec/tzd TimeZone Daemon
- /usr/sbin/screencapture Capture screenshots
/usr/sbin/usernoted /usr/sbin/usernoted Notifications daemon

When Swift 5 with ABI stability is released next year, I expect a big jump in the number of built-in apps using Swift.