My app is currently using CLGeocoder to get a CLPlacemark, then using placemark.postalAddress with CNPostalAddressFormatter to get an attributed string for the full address, I then enumerate its attributes to pull out specific elements like just the street or state or zip etc.
This is deprecated in iOS 26 with MKReverseGeocodingRequest being the intended replacement. This API returns an MKMapItem which doesn’t provide a CNPostalAddress - you can get a full address as a String but not structured address data that I’m seeing. Am I missing some way to get the postal address? Or is it a non-goal to provide that anymore? Thanks!
I have your code-level support request, and from that I have your Feedback Assistant report FB19363454 (thank you for that!) that has a bit more info on what you're doing.
Since you're using the address for display purposes, I would try to see if you can make MKAddressRepresentations
work for your needs, and if you could present the customization options to your customers based that line up with what that class offers. I realize the options are not as granular as you would like, and I can intuit that for certain customers, the API options may not be enough, so expressing your requests for even more API in FB19363454 is the right thing to do.
Once enumeration is complete I join the array with commas to separate the components
I want to call this out as an issue. Techniques like this are understandably common, and unfortunately, it is very easy to naively construct geographically incorrect place descriptions as a result. Geographic data and place identity has regional complexity and subtleties that are easy to over look! Thus, we want to discourage folks from doing these string concatenation techniques, and instead rely on the framework to provide you with the correctly formatted information through MKAddressRepresentations
— you can specify a description of how much address detail for the place is needed, and delegate the correctness of how to represent the place with different levels of detail onto MapKit.
— Ed Ford, DTS Engineer