What if you have an Android phone, but consider the Apple Watch superior to other smartwatches? Well, you could switch to iOS, or, you know, you could hack your way into making an Apple Watch work with Android, like Abishek Muthian did.
So I decided to make Apple Watch work with my Android phone using open-source applications, interoperable protocols and 3rd party services. If you just want to use my code and techniques and not read my commentary on it then feel free to checkout my GitHub for sources.
↫ Abishek Muthian
Getting notifications to work, so that notifications from the Android phone would show up on the Apple Watch, was the hardest part. Muthian had to write a Python script to read the notifications on the Android device using Termux, and then use Pushover to send them to the Apple Watch. For things like contacts and calendar, he relied on *DAV, which isn’t exactly difficult to set up, so pretty much anyone who’s reading this can do that.
Sadly, initial setup of the watch did require the use of an iPhone, using the same SIM as is in the Android phone. This way, it’s possible to set up mobile data as well as calling, and with the SIM back in the Android phone, a call will show up on both the Apple Watch and the Android device. Of course, this initial setup makes the process a bit more cumbersome than just buying a used Apple Watch off eBay or whatever, but I’m honestly surprised everything’s working as well as it does.
This goes to show that the Apple Watch is not nearly as “deeply integrated” with the iPhone as Apple so loves to claim, and making the Apple Watch work with Android in a more official manner certainly doesn’t look to be as impossible as Apple makes it out to be when dealing with antitrust regulators. Of course, any official support would be much more involved, especially in the testing department, but it would be absolute peanuts, financially, for a company with Apple’s disgusting level of wealth.
Anyway, if you want to setup an Apple Watch with Android, Muthian has put the code on GitHub.
This works if you consider something that runs a Pushover client “deep integration” and not the neat parlour trick it is. There’s much, much more going on from the lower level communication (i.e. WatchCommunication framework for those who look actually at APIs, w/ APNS, etc.), to the application level (i.e. fitness and health data synchronization… and iMessage) that’s hard to replicate as involves running the same things like XPC/CloudKit/Core Data/etc on both devices. It’s not trivial without effectively porting or reimplementing large chunks of iOS on Android. In particular, health data sync would probably be toxic for such an endeavour – for understandable reasons, they have strict data security requirements there.
If the wheel had been invented today, we’d all still be using sleds for decades to come because of this sort of nonsense.
The stated goal was not accomplished…getting an apple watch to work without an iphone requires…. an iphone… BAH! Now the authors household has not one but two iphones. Of course I blame apple for these closed ecosystems just like the author does, but given the author’s explicit disdain for apple’s closed ecosystems, it seems extremely questionable to buy an apple watch, a lapse in judgement even. IMHO more of us need to actively vote for open ecosystems with our wallets to help support and promote open products. But then again I have no right to impose my values on others. Sacrificing openness for convenience is par for the course for most consumers, which of course is why companies like apple get away with it. The problem with this though is that it begets more closed & proprietary products. After all apple has your money and apple’s competitors don’t.
Thom Holwerda,
I don’t think the iphone is just needed for an an initial setup… the article states that the author tried this but was not able to use a partner’s iphone just for provisioning. I think the setup requires an iphone to stay permanently on and connected to the internet…
Am I misunderstanding the article?
Yeah, it would be a cinch for apple to support other platforms… or hell they could just allow 3rd party developers to provide their own support. The FOSS community has proven time and time again that they’re willing and able to provide good support on their own. But the truth is apple doesn’t want integration with competing platforms and will intentionally add barriers to impede progress. Antitrust regulators can try to force the tech giants to play nicely but there’s a lot of scummy moves available in corporate playbooks to get around orders or provide compliance in the most difficult & anti-consumer ways possible.