I am having a problem with the following scenario. The user opens the Maps app, then selects a location like a store or restaurant, then tap on share and then on my app.
On iOS 26, my app stopped showing altogether. After changing the NSExtensionActivationRule
to TRUEPREDICATE
to accept all, I see this difference between the OS versions.
iOS 18.5
(lldb) po extensionContext?.inputItems
▿ Optional<Array<Any>>
▿ some : 1 element
- 0 : <NSExtensionItem: 0x60000000c5d0> - userInfo: {
NSExtensionItemAttachmentsKey = (
"<NSItemProvider: 0x600002930d20> {types = (\n \"public.plain-text\"\n)}",
"<NSItemProvider: 0x600002930c40> {types = (\n \"com.apple.mapkit.map-item\"\n)}",
"<NSItemProvider: 0x600002930bd0> {types = (\n \"public.url\"\n)}"
);
NSExtensionItemAttributedContentTextKey = {length = 329, bytes = 0x7b5c7274 66315c61 6e73695c 616e7369 ... 656e7472 61616c7d };
"com.apple.UIKit.NSExtensionItemUserInfoIsContentManagedKey" = 0;
}
iOS 26
(lldb) po extensionContext?.inputItems
▿ Optional<Array<Any>>
▿ some : 1 element
- 0 : <NSExtensionItem: 0x60000000cbd0> - userInfo: {
NSExtensionItemAttachmentsKey = (
"<NSItemProvider: 0x60000293afb0> {types = (\n \"public.url\"\n)}",
"<NSItemProvider: 0x60000293bf70> {types = (\n \"public.plain-text\"\n)}"
);
"com.apple.UIKit.NSExtensionItemUserInfoIsContentManagedKey" = 0;
}
Please notice how iOS 26 is no longer sending com.apple.mapkit.map-item.
Is there an alternative way to read the info from the map location shared to my app?