In the case of my macOS APRS client it's communicating via Bluetooth. The phone app GPS2IP has options to serve location via socket or push TCP or UDP still (gives option to use the phone's network assigned address or use it's own hotspot address) but the version I downloaded today (3/10/21, unsure of actual app version) has added Bluetooth sharing. It might be further along in its development?
I can sniff it using PacketLogger and it's definitely coming in via an ACL L2CAP receive from the phone using handle 0x0041, channel ID 0x0004 with either a 42- or 27-byte payload. Apple doesn't seem to document how PacketLogger works and I haven't dug in to understand the framing. Pretty sure it's a 4-byte header so that would leave either 23 or 38 byte of data.
Using Bluetility the phone shows it's offering a GATT service UUID 0x1819, which is Location and Navigation (org.bluetooth.service.location_and_navigation) with fields 0x2A6A, 0x2A67 and 0x2A68. In particular is field 0x2A67, which is defined as location and speed characteristic, where longitude and latitude reside, along with many other fields. BTW, this is using an iPhone 5s with iOS 12.4.9 so what's exposed could obviously be unique to my ancient device.
So I presume if the application is designed to use BLE location GPS2IP can present it now. I don't have anything to use to test BLE functionality on iOS other than that app (
LE GPS Rec) I mentioned before, so it's mostly just information without much purpose.