Live data from Hacker News

PWAs wont replace native iOS apps

app.campsite.co

251–260 of 268 posts

Re: PWAs wont replace native iOS apps

#251
post #138

Earlier quoted context omitted.

I am not the OP, but my line here is between the APIs provided by Apple and the third-party abstractions. As an iOS developer, the "lowest" you can get is the Apple framework. PWAs are a third-party abstraction on top of that, which come with all the risks/limitations of both third-party dependencies and abstractions.

I just don't really agree, almost all modern JS engines compile to machine code, so it's as "low" as writing Swift or Objective-C.

The JIT aspect is merely one component of the larger picture. With PWA’s specifically you have the entire browser stack to move around. Native code simply does not have this constraint.

They are (IMO) correct that having less layers between you and the lowest layer is ideal. The browser is an engineering marvel but it’s still a nuisance to work around.

Re: PWAs wont replace native iOS apps

#252
post #65

I expect PWA to remain noticeably limited relative to native, and probably with a noticeable gradient between Google and Apple. But I also expect PWA to steamroll all conventional app development nonetheless: PWA optionally bundled with some native components for filing the gaps, as in Tauri. Progressive will just grow another stage beyond manifest and serviceworker: manifest and serviceworker running in a customized…

> PWA optionally bundled with some native components for filing the gaps, as in Tauri. Isn't that essentially Capacitor? https://capacitorjs.com

Difference is you can write your native layer in Rust.

Re: PWAs wont replace native iOS apps

#253
post #214
post #145

Earlier quoted context omitted.

It means that the PWAs wouldn’t appear as separate apps, but as tabs within the same browser app. Also, unlike native PWAs, you couldn’t have per-PWA notification badges on the app icons (because there’s only one). A browser app could maybe emulate this by providing different widgets per PWA, but still it would be a less straightforward experience.

On iOS, native app are not allowed to ship their own html renderer implementation and therefore have to delegate to the renderer provided by the OS. If that happens, does the markup appear as a view in the app instance, or does the content appear as a tab in the browser? I assume that it's the former. iOS Firefox is famously not gecko but a Firefox-flavored safari and if that would cause markup to appear as tabs in r…

To be clear, you can ship your own renderer (I’ve done it for e.g Apple TV). You get fucked when you want your own complex engine with a JIT JS engine.

Re: PWAs wont replace native iOS apps

#254

Earlier quoted context omitted.

I for one would much rather have native mobile apps that use platform-appropriate controls rather than web apps that use whatever some designer came up with. We’ve already lost this battle on computers because of electron, but iOS is nice precisely because there isn’t an easy way to just ship web technology “apps”.

You don't have to override the native styles of UI controls with CSS. If you don't add any CSS, they will look just like in native apps. It's a choice, just like you could implement your completely custom controls in native apps if you wanted to.

Sort of: it’s possible for a browser to render the controls with native components. Designers of web applications tend to think their aesthetic preferences are more important than the preferences of their users; and, browsers have not always used real native controls: Google Chrome just shipped its own controls for form inputs, for example. Historically, various parts of the Cocoa text input system also worked incorrectly in Firefox and Chrome.

Re: PWAs wont replace native iOS apps

#255
post #131

I think developers need to clearly put blame on Apple for PWA not working. In apps you're not allowed to mention apple's shady behaviour when it comes to fees, but on the web you can. Since 2016 I've had the option for users to enable push notifications, with a big red disclaimer if the user is using iOS that it does not work on an iPhone. Still, I got so so many requests from user saying they had tried with Chrome(o…

> I think developers need to clearly put blame on Apple for PWA not working. I think that developers need to choose technologies that work on the platform they want to support, instead of blaming the platform. It is totally valid for Apple to say "if you want to develop an iOS app, use the iOS native framework". > If the user bought the phone expecting web push to work then they can probably return it and buy an Andr…

I don't think there's a "should" here, it's just that as a developer, I don't like dealing with Apple and chose long ago to stop taking jobs as an iPhone app dev. I'd only do it for significant extra money. And my side projects don't go out of their way to support iPhones anymore. If Apple cleans up their act, I'll reconsider, not that my single decision sways them at all.

Re: PWAs wont replace native iOS apps

#256

Earlier quoted context omitted.

> Can I make an iOS app in pure Python, and should Apple make it possible? Given that neither the browser or iOS runtime can interpret it, no? I think it's reasonable to expect people to write an iOS Python interpreter and expect to get that distributed though. And if the users deliberately install it, what's the problem? > Just like nobody is forcing Tesla Tesla has to certify vehicles as road-safe. Besides FCC comp…

> And if the users deliberately install it, what's the problem? And is this a universal principle of yours? For instance, would you say the same about malware—that anyone should have the right to develop it, and use whatever shady tactics they want to trick people into installing it—and if they do, that becomes their problem?

Users don't deliberately install malware, though. They do install Python runtimes; you can secure this the exact same way desktops have done for decades, by signing executable.

It's literally elementary stuff.

Re: PWAs wont replace native iOS apps

#257
post #233

Earlier quoted context omitted.

Asking Apple to properly support CSS is crying abuse? What comment did you read? Could you reply to mine , if you're replying to me? Specifically my reply in the context of the OP (is emulation necessary, when your web view of your OS just...does what it's supposed to?)

Safari supports CSS just fine, other than bleeding edge stuff where they lag a bit.

Maybe we agree to disagree.

https://s-hens.github.io/ios-webkit-quirks/

Feels mildly off-topic anyway.

Re: PWAs wont replace native iOS apps

#258
post #147

Understandable... PWAs are ultimately an alternative path from traditional mobile apps which will take away money from apple/google. But as a web dev community we need to stand firm and build PWAs regardless. If we treat pwas on iOS like we did Internet explorer (i.e. giving it special attention and hack solutions as opposed to just not developing for it) we will lose the fight. I suggest you call out the issues with…

Google alongside Microsoft, are the two main companies behind PWAs.

And yet do they really use it for the advantages? Office and docs still don’t work offline as PWAs.

Re: PWAs wont replace native iOS apps

#259

Earlier quoted context omitted.

What are you talking about? With iOS 17.4 in the EU, you can no longer make a web app (PWA) that uses a full screen window with no browser ui controls. No longer use local storage for the web app's data, and no longer send push notifications and show badges on the home screen icon for web apps. Third party browsers can't add this functionality back. How do you expect them to make push notifications work with PWAs?

> With iOS 17.4 in the EU, you can no longer make a web app (PWA) that uses a full screen window with no browser ui controls. Are you sure? Go to https://sindresorhus.com/screenfull/ , tap "Request", and you should see a full-screen website. Any [website|webapp|PWA] can do this with Safari. (Screenshot: https://imgur.com/a/CTWFPol ) Third-party browsers using their own browser engines can do whatever they like. > How…

That's good. The Fullscreen API isn't exactly the same as a PWA, but it might go a long way to make my PWAs feel a bit more native again.

I see that the support for the Fullscreen API isn't available in iOS 17.3 but will be available once 17.4 lands.

"Added support for the Fullscreen API on iOS. (118083593)"

https://developer.apple.com/documentation/safari-release-not...

Re: PWAs wont replace native iOS apps

#260
post #147

Earlier quoted context omitted.

Google alongside Microsoft, are the two main companies behind PWAs.

And yet do they really use it for the advantages? Office and docs still don’t work offline as PWAs.

For example, packing them as apps on the respective stores.

https://developer.chrome.com/docs/android/trusted-web-activi...

https://developer.android.com/reference/androidx/browser/tru...

https://learn.microsoft.com/en-us/microsoft-edge/progressive...

Just because you don't get Office as PWA, doesn't mean they aren't serious about them.

Post reply on HN