Live data from Hacker News

Private client-side-only PWAs are hard, but now Apple made them impossible

andregarzia.com

291–300 of 927 posts

Re: Private client-side-only PWAs are hard, but now Apple made them impossible

#292
post #5

I really appreciate this link. I would have never seen this otherwise. It's kind of a disappointment for us on the enterprise side. Our main offering is an offline app where people are disconnected from the internet for weeks and we use localStorage to validate who they are. It's a bit vague about how this affects apps that don't use safari. Nevertheless, we might have to start to really think about the user experien…

If you're using Cordova or Capacitor this is why, at Ionic, we recommend never using localStorage for storing important data. Better to use an explicit filesystem storage solution like SQLite.

Re: Private client-side-only PWAs are hard, but now Apple made them impossible

#293

Earlier quoted context omitted.

> Apple restricts tracking by limiting browser storage But the argument that this will protect privacy in the first place seems really weak. Before this change in Apple's policy, an app could store my config data on my PC. After this change, they'd need to have me log in and send the config data to their servers. That seems like I've lost privacy, not gained it.

> they'd need to have me log in and send the config data to their servers You'd have to log in. That's a hurdle that involves implicit consent.

Respecting someone's privacy doesn't mean forcing them to "consensually" give up their privacy.

Re: Private client-side-only PWAs are hard, but now Apple made them impossible

#294

I think looking at Apple as saviour of Privacy, is for lack of better term just wrong. They have always favoured closed systems even if didn't provide privacy advantages or as in this case was counter-intuitive for privacy. I feel the comparison of Apple with data companies such as Google, Facebook is by itself at fault. Apple like any computer company of 70's was not into data, just because Internet itself didn't ex…

Agreed — Apple’s trying to project a high-minded motivation here, but their real motivation is likely to try and limit web technologies so that companies must still invest in native iOS apps and remain within their walled garden.

Re: Private client-side-only PWAs are hard, but now Apple made them impossible

#295
post #111

Earlier quoted context omitted.

As a native app developer, I can live with this.

As long as you start refering to the "i" in "iPhone" as Intranet and not ~Internet~ then we're cool.

My iPod Classic has no intranet or internet.

What does the "i" mean in that case???

Re: Private client-side-only PWAs are hard, but now Apple made them impossible

#296
post #250

I think the original post is oversimplifying the new behaviour a little. If you look at the other blog post on ITP 2.3 [1] it says: > ITP 2.3 caps the lifetime of all script-writeable website data after a navigation with link decoration from a classified domain. i.e. the 7 day timeout for local storage only kicks in if you've been redirected from a domain that ITP has classified as one that tracks users. So, for exam…

> If you look at the other blog post on ITP 2.3...

why would you look at the old blogpost for the new behavior?

It's all web pages, regardless of classification or redirects. The new webkit blog post is quite clear:

> Now ITP has aligned the remaining script-writable storage forms with the existing client-side cookie restriction, deleting all of a website’s script-writable storage after seven days of Safari use without user interaction on the site

https://webkit.org/blog/10218/full-third-party-cookie-blocki...

Or straight from the ITP lead's twitter:

> Fifth, all script-writeable storage is now aligned with the 7-day expiry Safari already has for client-side cookies.

https://twitter.com/johnwilander/status/1242516001939324928

(with follow up replies on what resets the seven day clock)

Re: Private client-side-only PWAs are hard, but now Apple made them impossible

#297
post #250

I think the original post is oversimplifying the new behaviour a little. If you look at the other blog post on ITP 2.3 [1] it says: > ITP 2.3 caps the lifetime of all script-writeable website data after a navigation with link decoration from a classified domain. i.e. the 7 day timeout for local storage only kicks in if you've been redirected from a domain that ITP has classified as one that tracks users. So, for exam…

You're describing behavior from 2019-09-23

I see the same "oversimplifying" in webkit's 2020-03-24 blog post linked from the original post. See "7-Day Cap on All Script-Writeable Storage" in https://webkit.org/blog/10218/full-third-party-cookie-blocki...

Re: Private client-side-only PWAs are hard, but now Apple made them impossible

#299

Earlier quoted context omitted.

If you've ever looked at user analytics you know this is absolutely not true

I'm interested. As a iOS developer I always found that user want to skip the login page soon as possibile, if there is an FB button they press it. Do you have different experiences of it?

I run away from services that only allow social media logins.

1) I don't want social media to track me everywhere

2) If the people developing this app have taken this shortcut, what other bad, leaky implementations do they have on their site/app?

-> No thanks, exit this way

Re: Private client-side-only PWAs are hard, but now Apple made them impossible

#300

I would be OK with 7 days being the default with a permission model where I can grant a website longer storage time. Actually, I'd be even happier if any form of offline storage required explicit user permission anyway.

Even before this change, data in IndexedDB was kind of volatile - if a device was low on space, browsers could delete stored data.

https://dexie.org/docs/StorageManager describes the StorageManager API which lets you prompt the user to allow your IndexedDB data to be stored more reliably. My first thought after reading this article was wondering if this would allow an exception to the 7 day rule... but then I remembered that Safari is the only "modern" browser which does not support the StorageManager API

lol, sucks for users of my client side JS video game!

Post reply on HN