4 ms·
There is virtually no iOS support though. Even though service worker and app manifest are being worked on at the moment in Webkit I think it'll be a while befor
by mephitix 9y ago
There is virtually no iOS support though. Even though service worker and app manifest are being worked on at the moment in Webkit I think it'll be a while before we see safari/mobile safari updated. I completely agree PWAs are the way forward though.
- bad_user 9y agoThat's Apple's problem though and they've been lagging behind for quite some time. On Android it's possible for example to run Facebook as a web app, because Chrome on Android can deliver notifications, keeping that connection persistent, so even after the page has been closed. And this is pretty cool because the browser is a much better sandbox than the OS. Now I use an iPhone and I'm very uncomfortable giving access to my photos to Facebook just for uploading a file.
- denisw 9y agoIt's your problem if a third of your potential users gets put off by how sub-standard your PWA is on their platform and chooses a competitor with native mobile app instead.
- tootie 9y agoThey are not lagging, they are obstructing. Google wants to push users to the web because they control search. Apple wants to push people to their proprietary app store. They have consistently obstructed anything that brings native app features to the browser.
- MBCook 9y agoGood. Every time browsers get new features people (ESPECIALLY ad networks) abuse it for tracking and other nefarious purposes. Battery level, light level, probably even gyroscope stuff. Hell they fingerprint canvas which isn’t even an iOS thing. I don’t want these issues. I LIKE these restrictions so random sites I visit (and even worse random code injected in them) can’t watch me as easy. Apps have issues but I control what apps I download and can delete them. At least I have a _chance_ there.
- bad_user 9y agoWait, what? That's not an argument. Desktop browsers have features and add-ons for the privacy conscious right now. You can block trackers, third party cookies, JavaScript execution and anything you need. Personally I feel much, much safer loading a website than when executing a binary on my computer or phone. You can block any elements on any website from loading, but you can't inspect application binaries and block specific elements from it — only requests to certain IPs or domains, if you had root access that is. Can you block Facebook's in-app advertising on your iPhone? You can't and even more so, the app insists on opening all URLs in its own dumbed down view instead of Safari, which means they track those visits and their duration as well, probably without content blocking active, because AFAIK it doesn't work in web views. Well I can block Facebook's ads and tracking in my Firefox for Android, since it supports extensions and it probably works using iOS Safari's content blockers as well.
- MBCook 9y agoApps that show image ads don’t get to execute random people’s JS on my phone. (I avoid the vast majority of ad laden apps anyway, partlybfor tracking reasons).
- berkes 9y agoThis is a strange argument. The website operator/publisher is the one choosing to track you (or not). Not some magic third party. If you don't trust example.com from tracking you, you certainly cannot trust example.App from tracking you. For web, the technology is at least transparant and you can detect being tracked. With native apps, there is nothing you can do, other than reverse engineering the binaries, monitoring internet-traffic and hoping that example.App was built with privacy in mind.
- MBCook 9y agoI trust example.com. The problem is they include Google ads which can do anything to track me the browser allows. If I download the example.com app then any tracking is limited to what they included either themselves or through an SDK. I know that $random_advertiser doesn’t get to execute their own code.
- mattwoodnyc 9y agoThis. I work on the mobile web, and eagerly watch the webkit updates, but it's clear that Apple wants users to download native apps, b/c they control the quality and security of apps coming out of the App Store.
- Klathmon 9y agoThere is actually "negative" support in iOS. You can add a website to your homescreen in safari, but when you do it uses a different rendering engine, with different levels of support. Take WebRTC which was recently (partially) added to iOS. It will work great in safari, but if you add the site to your homescreen, it is no longer supported. The job of telling users to remove homescreen shortcuts to use a new feature is a nightmare.
- tinus_hn 9y agoCan’t you automatically detect this problem and tell the users when they try to do this?
- Klathmon 9y agoYes, but people become untrustworthy very quickly. It doesn't make any sense to them, so they distrust it. Especially because we had been encouraging the act of bookmarking our web app on the homescreen for years (since it works great for our use case! Offline access is possible, loads quickly, no worries of apple shutting us down, and it's as cross platform as it gets). Also the wording is difficult. Telling users to open this same page, but in safari is confusing, and they need to login again, and navigate to that page again. Imagine if a website told you that if you had previously "bookmarked" their page in your desktop browser, that you had to remove the bookmark to use a feature. You'd be skeptical at the very least right? It's a strange request... Not to mention that even detecting it is kind of broken. The feature looks like it's available (opposed to pre ios 11 where the functions didn't exist), but when you go to use them they throw a generic exception (which can mean anything from they are in the "added to homescreen" browser on ios, the camera randomly crashed on android, another app is currently using the camera, or it just didn't work for some unknown reason). So we have to check for the nonstandard `navigator.standalone` property, then just assume it won't work for the user. If iOS 12 adds support for this, we will need to update our app again and remove this block, but only if they are on iOS 12... It's just a giant fucking mess.
- tinus_hn 9y ago