@@ -128,6 +128,8 @@ extension iOSVersion {
128128 if #available( iOS 27 , * ) {
129129 return . past
130130 }
131+ // Apps built before the iOS 26 SDK get "19.0" as the system version from ProcessInfo.
132+ // Once built with the iOS 26 SDK, the version then becomes "26.0".
131133 if #available( iOS 19 , * ) {
132134 return . current
133135 }
@@ -238,7 +240,9 @@ extension tvOSVersion {
238240 if #available( tvOS 27 , * ) {
239241 return . past
240242 }
241- if #available( tvOS 26 , * ) {
243+ // Apps built before the tvOS 26 SDK get "19.0" as the system version from ProcessInfo.
244+ // Once built with the tvOS 26 SDK, the version then becomes "26.0".
245+ if #available( tvOS 19 , * ) {
242246 return . current
243247 }
244248 return . future
@@ -362,7 +366,9 @@ extension macOSVersion {
362366 if #available( macOS 27 , * ) {
363367 return . past
364368 }
365- if #available( macOS 26 , * ) {
369+ // Apps built before the macOS 26 SDK get "16.0" as the system version from ProcessInfo.
370+ // Once built with the macOS 26 SDK, the version then becomes "26.0".
371+ if #available( macOS 16 , * ) {
366372 return . current
367373 }
368374 return . future
@@ -416,7 +422,9 @@ extension visionOSVersion {
416422 if #available( visionOS 27 , * ) {
417423 return . past
418424 }
419- if #available( visionOS 26 , * ) {
425+ // Apps built before the visionOS 26 SDK get "3.0" as the system version from ProcessInfo.
426+ // Once built with the visionOS 26 SDK, the version then becomes "26.0".
427+ if #available( visionOS 3 , * ) {
420428 return . current
421429 }
422430 return . future
0 commit comments