• 2 Posts
  • 13 Comments
Joined 7 months ago
cake
Cake day: April 21st, 2024

help-circle






  • I tried fooling it myself several times with the aim of getting satellite connectivity in my unsupported country, to no avail.

    Used a German SIM card (where this feature is supported), went in my basement where there’s no cell service so that it can’t read MNC or MCC from any networks nor can it read GPS precisely (the circle spanned almost all of Western Europe, that imprecise I mean), used a Raspberry Pi as a router with country code as DE, disabled Wi-Fi, used VPN, used the Xcode debugging tools to simulate iPhone location to Germany (this usually fools all apps into thinking I’m in Germany, including Apple’s own Find My), all to no avail. And there’s no way to feed countryd any custom data.

    It’s insane.


  • As a developer, you don’t really get access to any of that.

    Mainly, you can’t access any history of calls and messages at all, nor can you automate sending one. All interactions with calling or texting has to be done with user interaction. Namely, calling requires the user to confirm the call, and sending a message requires the user to confirm, and they can also edit the message beforehand.

    I don’t think that’s bad, given that messages are some of the most private things on our devices, and personally, I never had to use any of these or required more access. But more choice is always appreciated.


  • An European iPhone, aka an iPhone which will get these features, is identified by a background process named countryd, introduced in iOS 16. Its only purpose is to compute and predict the most likely location of the user (as in country/region) and lock down features accordingly.

    These are only some of the factors taken into the equation:

    • GPS location
    • Wi-Fi location
    • Wi-Fi hotspot country codes
    • Cellular/GSM country codes
    • IP address
    • Home and roaming operator regions
    • Apple Account region
    • Device region
    • Satellite reachability

    countryd takes in all of these and more as input to provide the most likely country of the user. If that country is in the EU, then 💥 Sideloading, Default Apps, etc etc etc goodies