this post was submitted on 03 May 2024
103 points (78.1% liked)
Greentext
4375 readers
2238 users here now
This is a place to share greentexts and witness the confounding life of Anon. If you're new to the Greentext community, think of it as a sort of zoo with Anon as the main attraction.
Be warned:
- Anon is often crazy.
- Anon is often depressed.
- Anon frequently shares thoughts that are immature, offensive, or incomprehensible.
If you find yourself getting angry (or god forbid, agreeing) with something Anon has said, you might be doing it wrong.
founded 1 year ago
MODERATORS
you are viewing a single comment's thread
view the rest of the comments
view the rest of the comments
It's totally fine to use, but it's a pretty big pain to develop for. And you basically cannot avoid it, since it's forced on every single iOS user (third-party browsers on iOS are essentially just Safari with a custom UI due to Apple's walled garden policies).
Safari is notorious for adopting open web standards and APIs incredibly late or not at all, leading many to believe that it's holding back the ability for web apps to achieve more native-app like capabilities on purpose. Right now, some major APIs are not supported on iOS, even though they have been on Android browsers for a while. The ability to install web apps locally and have them send notifications finally came to iOS Safari in a pretty half-baked fashion years after it arrived on Android. And that's just one example of many.
It also just behaves slightly differently & sometimes even explicitly off-spec compared to Chromium and Firefox engines in so many small ways that you quite often have to debug strange Safari-only bugs. It's pretty annoying.
This makes more sense to me. The only things I’ve ever made that have to worry about multiple web browsers are basic, static HTML pages that just need CSS and maybe a tiny bit of JS. My biggest annoyance was that it didn’t have a grid view like Firefox did.
What does the web use Bluetooth for? That sounds like a nightmare regardless of whether the browser will let it or not, lol
Nothing much at the moment, but that's at least partially due to Apple's lack of support 🤷
Web apps could theoretically do everything native apps can. The only thing you need are APIs implemented by browsers that "bridge the gap" between web apps running in it and the host OS.
A bunch of such APIs including access to talk to Bluetooth devices have been proposed a while ago, but are missing on Safari. Bluetooth is just one example, another is the ability to communicate with peripherals at all (e.g. USB or MIDI or Serial). Those APIs allow for example updating the firmware of a device, reconfiguring it, etc.
The availability of such APIs is just equivalency with native apps and the possible usecases are everything you'd currently need to install a native app for. Imagine for example just going to some website to change settings of your Bluetooth headphones instead of having to download the manufacturer's app. Web Bluetooth also allows finding Bluetooth beacons, which would make for example museum audio guides with indoor navigation possible as a simple website. Etc. etc. 🤷
This has been insanely informative. Thanks for the detailed reply!