Repository navigation
feat(device_info_plus): Add iOS device identifiers for iPhone 18 Pro and iPhone 18 Pro Max - #3993
Merged
vbuberen merged 1 commit intoSep 30, 2026
Conversation
…and iPhone 18 Pro Max The table stops at the iPhone 17 family, so `modelName` returns "Unknown device" on both new phones. - iPhone19,2: iPhone 18 Pro - iPhone19,3 and iPhone19,7: iPhone 18 Pro Max. They are two regional variants of one phone, so they share one branch, the way the iPhone XS Max pair does. The identifiers and names are Apple's own. macOS 27.0's device table (CoreTypes.bundle, MobileDevices-0001.bundle) describes iPhone19,2 as "iPhone 18 Pro" and iPhone19,3 and iPhone19,7 as "iPhone 18 Pro Max", and the simulator profiles of Xcode 27.0 give iPhone19,2 and iPhone19,3 for the two phones. iPhone19,4 is left out: the same macOS table lists it with no marketing name yet. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Contributor
Author
|
The two red checks are not from this change:
The change itself touches only the iOS |
vbuberen
approved these changes
Sep 30, 2026
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Description
Adds the iOS device identifiers of the iPhone 18 Pro and the iPhone 18 Pro Max. Without them
IosDeviceInfo.modelNamereturnsUnknown deviceon both phones.iPhone19,2iPhone19,3iPhone19,7The two Pro Max identifiers are regional variants of one phone, so they share one branch, the way the iPhone XS Max pair (
iPhone11,4,iPhone11,6) does.The identifiers and names come from Apple's own tables:
/System/Library/CoreServices/CoreTypes.bundle/Contents/Library/MobileDevices-0001.bundle/Contents/Info.plist:iPhone19,2(V63AP) is described as "iPhone 18 Pro", andiPhone19,3andiPhone19,7(V64AP, V64sAP) as "iPhone 18 Pro Max".modelIdentifierisiPhone19,2for iPhone 18 Pro andiPhone19,3for iPhone 18 Pro Max.iPhone19,4is left out: the same macOS table lists it with no marketing name yet.How it was checked:
DeviceIdentifiers.mcompiles with-Wall -Werrorfor iOS devices and the simulator; a small harness calling+userKnownDeviceModel:returns the new names for all three identifiers, still returnsUnknown deviceforiPhone19,4, and returns the same names as before for existing identifiers;clang-formatleaves the file unchanged; the package's unit tests pass; anddart analyze --fatal-infosfinds no issues with the example linked to the local package, asmelos bootstraplinks it.Related Issues
None.
Checklist
CHANGELOG.mdnor the plugin version inpubspec.yamlfiles.flutter analyze) does not report any problems on my PR.Breaking Change
Does your PR require plugin users to manually update their apps to accommodate your change?
!in the title as explained in Conventional Commits).🤖 Generated with Claude Code