18 ms·
> From minor things like “iOS Safari won’t let you play audio without first interacting with the page” to major, show-stopping things like, “iOS Safari won’t le
by rolha-capoeira 9y ago
> From minor things like “iOS Safari won’t let you play audio without first interacting with the page” to major, show-stopping things like, “iOS Safari won’t let you play the next song if your app is in the background or if your screen is off.”
I disagree that these things are purely because Apple wants your $99/year. Maybe that's part of the story, but not all.
I am glad that websites cannot play audio without the user first interacting with the page. I am also glad that websites can't play audio in the background — as a user, I would find it too "buried" behind Safari and I wouldn't appreciate the feeling that a website was running in the background. (Yes I know you can control audio via the Notifications Center and Control Center.)
I appreciate that these permissions are reserved for apps that Apple has vetted, even if this is a pain for developers and they are not a perfect institution, as a user I appreciate that they are trying to maintain quality and encourage good app behavior.
I'm glad your app had to jump through these hurdles to gain the functionality your users wanted. Like you said, it's where the users are they were asking you directly for it. These are higher-level permissions and should not be free for the taking.
- judah 9y agoAgreed that apps (web or native) shouldn't have free access to e.g. your contacts without permission. But Apple goes beyond security and actually makes it impossible to build first-class experiences for iOS without paying $99/year + 33% in-app purchases. I think that's unfortunate. The free and opened web presents a challenge to Apple's app business. They have a perverse incentive to keep web apps second-class citizens on iOS. And this is a major reason why iOS Safari has become the new Internet Explorer 6.
- kevin_b_er 9y ago$99/yr plus buying an apple computing device.
- al2o3cr 9y agoLemme get this straight: you're mad that a company you don't want to pay $99/yr to won't build APIs so you can make money on their platform. So sad, lemme find my tiny violin.
- shkkmo 9y agoI'm not mad at them. However their lack of support for industry standards is why I won't buy their product.
- scarface74 9y agoAnd again that's the free market at work. There are enough people who have a different set of priorities to make Apple a very successful company.
- foolrush 9y agoThe ”free” market is not a sentient being.
- scarface74 9y agoAnd nowhere did I say it was. The fact is every company hopefully has a business plan to be profitable the numbers show that Apple has one of the best business plans to do so.
- tomcooks 9y agoSame here, and if it wasn't bad enough other companies copy this terrible attitude. Dinosaurs will die.
- wpietri 9y agoIt's not their platform. The devices belong to the people who bought them.
- judah 9y agoAuthor here. I'm not making any money on their platform. I'm a non-profit, building a free app; this isn't about money. I mentioned money in the post as a list of all barriers to moving a PWA to app store. $99/year + 33% in-app purchases (plus a $1000+ Mac to build, and probably one or more Mac minis for CI) is a barrier. The bigger concern is Apple is lagging behind on web standards. I suspect the reason for that is because web apps undermine their app business; this is a replay of the 1990s when Microsoft lagged their browser behind web standards, knowing it undermined their business. So, keep your violin, brother. :-) My post wasn't a complaint, but a documenting of the hurdles involved in moving a PWA to the app stores.
- laythea 9y agoYes but given the current state of the App store, with the minor obstacle that is the $99/year, I hasten to imagine what the state of it would be without it!
- gkya 9y ago> The free and opened web presents a challenge to Apple's app business. The free and opened [sic] web is BS. The "web" was always free and open, if you had worthy and user-respecting stuff to publish. Autoplaying video and other similar features are just plain evil. And if web apps are second class citizens on iOS, that's really a nice thing to hear, IMnsHO, because they are second class citizens on the WWW itself. They are either castrated versions of the native applications they are pretending to be, or overtly bloated thin clients (i.e. glorified <form>s) anyways. There has been one web app that I've used and liked: the old Gmail app. The requirements of the platform are quite clear, and the service in return is quite desirable (apps being reviewed before publishing, user-centric permissions scheme, etc.) and even though I don't own an iOS device ATM, it sounds quite desirable to me, at least over Android where there is a hundred million billion versions of the OS out there and nobody bothers sending update my way so that I can has some granular control over what I allow the apps do. If you don't like it, don't take it. And it's nothing like IE because nobody has to use iPhones whereas Microsoft had put its OS and its browser on almost every computer out there, and I bet older IE browsers still have more market share than the sum of devices online with Safari installed. They are just a little island of the technosphere that want to get what they paid for, and enjoy the web like it was meant to be, possibly; and I'm just like them with my Qutebrowser where I have to disable JS and maintain a whitelist because the free and open web. Gosh.
- judah 9y agoThe free and open web is BS? Well, I disagree. That any person with the will and the skill can publish something for all the world to see, without the need for gatekeepers? That's incredible freedom the world has never before seen. >> "Autoplaying video and other similar features are just plain evil." I'm not even asking for that. My app is a music player in the vein of Pandora. iOS Safari doesn't let me play the next song if I'm not in the fore. Apple has acknowledged this is an issue; maybe they will fix it in a future version. iOS Safari: As someone who has supported a web app (now PWA) for 7 years on iOS Safari, I say with knowledge and experience that yes, iOS Safari is the modern IE6. I say that because it is the slowest to adopt standard web features, and the reason for doing so is a business one. Both reflect 1990s IE and Microsoft.
- shkkmo 9y ago> I am glad that websites cannot play audio without the user first interacting with the page. I am also glad that websites can't play audio in the background > These are higher-level permissions and should not be free for the taking. While they shouldn't be available to every site, these higher level permissions should be request-able by a PWA with the option to grant that permission indefinately. Apple is deciding they know better than me and providing me no choice. This sort of crap is why I don't own an iPhone. Requiring developer to buy a Mac and pay $99/year to play audio in the background is developer-hostile in a way that is not user-friendly at all.
- saagarjha 9y agoHow are you going to stop every website requesting all the permissions upfront?
- danShumway 9y agoThe same way we stop native apps from doing that? It used to be fairly common in Android for developers to just request everything. Developers still request too much, but it's gotten a bit better because in newer versions of Android you have to actually start using the API before the permission will be requested - so as a user if you request microphone access, I know it's because right now you intend to record sound. It's a very small improvement, but it helps, and it's pretty much copied wholesale from web's permission model. The web also allows you to grant parts of permissions. When a website asks you for location and camera, you can choose to give it just camera - or you can choose to give it camera for one session and then re-ask the next time the API is accessed. These are all small steps that make it cumbersome for developers to just say "give me everything or nothing works." The trick is to make it easier for app developers not to think about permissions; and then when you get an app that requests 3 permissions upfront, you know something shady is going on because there just aren't a lot of legitimate reasons to do that anymore.
- deleted 9y ago[deleted]
- 9y ago
- pier25 9y agoAre you glad that Safari for iOS (and its web views) don't follow the standards? For example you can't set the height of an <iframe> which is something that has been been possible on every browser since IE4. I agree that a browser should not be able to access native resources (in mobile nor desktop) but the problem with Safari for iOS goes way beyond that. I won't claim to know Apple's motivation for not treating web technologies as first class citizens on iOS, but I know for sure that this situation is completely intentional. Apple has the resources and talent to make this happen and this problem has been a constant for years. Safari has been neglected to the point where reported bugs linger for years, and when reporting a bug the most common answer is silence. The project is seriously underfunded.
- deleted 9y ago[deleted]
- addicted 9y ago> as a user, I would find it too "buried" behind Safari How is this any different than music playing on say Google Play Music on my iPhone? I listen to music from YouTube, iTunes, iHeartRadio, Google Play Music, Pandora, and other apps occasionally. Why don't I feel it's buried in those situations? Because of the simple reason that Apple allows only one source of audio on iOS at any point of time (including Safari), which can be controlled from Control Center. Control Center also displays the app, and tapping on it, takes me straight to the app. There is no reason a tab on Safari couldn't similarly queue up a playlist, and if I want to get back to it, I go to control center, and tap the safari icon which takes me to Safari and the tab playing the music. Now I don't think Apple prevents this out of malicious reasons. It's likely a vestige of their older restriction mechanisms which they haven't gotten around to changing because most people do in fact just create apps for things like music playlists. But I seriously doubt there is any good UI reason to prevent a tab in Safari from queuing a playlist, any more than there is for preventing native app from doing so.
- sitharus 9y agoFrom observing non-techy people it's because of intent. When you go to YouTube or Pandora or whatever you intend to make your phone make noise. When you follow a random link from your Facebook news feed on to an unknown website with a 'funny' article you don't. This is why autoplay videos are now blocked from playing audio as well. This can't be resolved with a confirmation dialog as people don't read those either. I do hope Apple add support for PWAs in the future, though perhaps with some very guarded APIs available to avoid exfiltration of contact lists and excessive background work etc.
- swebs 9y ago>How is this any different than music playing on say Google Play Music on my iPhone? Because when I'm browsing the internet, random websites don't use Google Play Music as an attack vector for some autoplaying video that I never asked to see.
- Angostura 9y agoI can have 30 tabs open in Safari on iOS. It would drive me absolutely potty trying to find the one that had decided to start playing advert audio.
- bradhe 9y agoThank you. I came back here to specifically higlight that bit because Jesus Christ guys you can’t ask for ads that don’t auto play and complain about this thing at the same time. “The vendor should figure out what I want” is a really easy thing to say...but this is how they’re doing it! At the end of the day if you want a tiered permissions model you need a strictly tiered authorization model. Right now you implicitly authorize an app/website/service/whatever to do certain things by explicitly installing it as an app. On desktop, web apps explicitly require your authorization for things like pushing notifications (isn’t it weird that EVERY WEBSITE wants to push notifications now?) or using your location data.
- mceoin 9y ago> These are higher-level permissions and should not be free for the taking. But there has to be a balance though, right? Steve Jobs called the computer a bicycle for the mind, but actually deploying simple apps can feel like a mousetrap for the soul - it crushes your will to create.
- micheljansen 9y ago> I am glad that websites cannot play audio without the user first interacting with the page. I am also glad that websites can't play audio in the background... Websites yes, but if you choose to "install" a webapp to your home screen, it still cannot ask for or get these permissions. Not that users ever do install apps without app stores, but that's another story.
- amelius 9y ago> I am glad that websites cannot play audio without the user first interacting with the page. And what makes an app different from a website, really? In my opinion, web browsers need to add privilege controls to websites just like the OS does to apps.
- schrodinger 9y ago>permissions are reserved for apps that Apple has vetted That apps have been vetted is the difference.
- asciimo 9y agoI think the point is that web sites could also be vetted.
- vageli 9y agoWebsites would need to be continuously vetted because their content could change, unlike a binary release.
- exodust 8y agoSuch vetting is not needed for an action such as playing audio in the background. That is harmless and only needs to be a permission the user chooses to allow when visiting that page.
- exodust 8y ago> I am also glad that websites can't play audio in the background If you're saying that web pages should not be allowed to even ask for permission to play background audio, then I disagree with you and Apple 100%. Nobody should be arguing for anything less than user-controlled choice in the matter of permission to play audio on a website, in the background, any way you like when permitted by user. To deny even the choice, is to feed and validate the theory that Apple has no interest in improving the browser experience because they want to keep that bar low by design, much lower than apps.