Open nicolas17 opened 1 year ago
After iOS 17.0b1 was released, the manifest got fields 54/55/56 added to urlInfoSet as well.
I have now looked at 17.0b2 GeoServices and found these: 95 = offlineMetadata 95.0 = dataVersion 95.1 = regulatoryRegionId urlInfoSet.54 = offlineDataBatchListURL urlInfoSet.55 = offlineDataSizeURL urlInfoSet.56 = offlineDataDownloadBaseURL
So those new fields were all about offline maps, as announced in WWDC23. However, field 57 in urlInfoSet is still not present in the binary!
Decoded manifest contents:
urlInfoSet {
...
offlineDataBatchListURL {
url: "https://gspe121-ssl.ls.apple.com/api/batchesForRegion"
}
offlineDataSizeURL {
url: "https://gspe121-ssl.ls.apple.com/api/sizeForRegion"
}
offlineDataDownloadBaseURL {
url: "https://gspe121-ssl.ls.apple.com"
}
57 {
1: "https://gsp57-ssl-bcx.ls.apple.com/dispatcher.arpc"
3: 0
}
}
offlineMetadata {
dataVersion: 1686608055357
regulatoryRegionId: 0
}
Field 57 continues to be a mystery.
The Apple Maps manifest in protobuf format got new fields recently: https://gspe35-ssl.ls.apple.com/geo_manifest/dynamic/config?os=ios&os_version=17.0
My current .proto file is here: https://gitlab.com/nicolas17/geoservices-re/-/blob/e6b063db6f800bbf0e6b179dc6940fff89d17d22/geoservices.proto
I didn't find 95 nor urlInfoSet.57 in iOS 16.6, so this is likely new iOS 17 material. Gotta decompile GeoServices.framework.