Below is an English version of your post, ready to copy-and-paste into the Apple Developer Forums:
I’m seeing a crash in Xcode 26 beta 3 whenever the StoreKit symbol SKStoreProductParameterAdNetworkSourceIdentifier is present while running on an iOS 15 simulator.
Steps to reproduce
Install Xcode 26 beta 3.
Create any iOS app and run it on an iOS 15 simulator (device model doesn’t matter).
Add the following code anywhere and run:
override func viewDidLoad() {
super.viewDidLoad()
if #available(iOS 16.1, *) {
print("SKStoreProductParameterAdNetworkSourceIdentifier: \(SKStoreProductParameterAdNetworkSourceIdentifier)")
}
}
The project builds successfully, but before the #available(iOS 16.1, *) check is reached, the app crashes with:
Symbol not found: _SKStoreProductParameterAdNetworkSourceIdentifier
When I build the same project with Xcode 16.4 and launch it on an iOS 15 simulator, it runs without crashing.
Investigation so far
Because SKStoreProductParameterAdNetworkSourceIdentifier is just an NSString, I could substitute the string literal "SKStoreProductParameterAdNetworkSourceIdentifier" as a temporary workaround, but that doesn’t feel like a proper fix.
The symbol is still declared in both SDKs:
/Applications/Xcode-16.4.0.app/.../StoreKit.framework/Headers/SKAdNetwork.h:48:
SK_EXTERN NSString * const SKStoreProductParameterAdNetworkSourceIdentifier API_AVAILABLE(ios(16.1)) API_UNAVAILABLE(macos, watchos, visionos);
/Applications/Xcode-26.0.0-Beta.3.app/.../StoreKit.framework/Headers/SKAdNetwork.h:48:
SK_EXTERN NSString * const SKStoreProductParameterAdNetworkSourceIdentifier API_AVAILABLE(ios(16.1)) API_UNAVAILABLE(macos, watchos, visionos);
So the symbol hasn’t been removed in the beta SDK. Given that the code is wrapped in #available(iOS 16.1, *), I don’t believe the sample itself is at fault.
Questions
Could this be a bug in Xcode 26’s availability checking or linker?
Has anyone else encountered the same issue or found a more robust workaround?
Any insights would be greatly appreciated.