3 ms·
At least on desktop you generally know where the line is, on mobile there's a mystery limit you're not allowed to cross, and you're also not allowed to know whe
by jsheard 3y ago
At least on desktop you generally know where the line is, on mobile there's a mystery limit you're not allowed to cross, and you're also not allowed to know where the line is until you reach it, which might gracefully throw an error or might result in your tab being force-killed, and you're not allowed to know which of those will happen either.
- fragmede 3y agoMobile Safari just has a fixed limit of 500 tabs
- Me1000 3y agoIf you switch to private browsing mode you can get an extra 500 tabs. :)
- wlesieutre 3y agoWhat about other tab groups?
- paulgb 3y agoThis is a user-facing limit; jsheard is talking about how as an app developer you don't know whether your app is below the limit or whether the next allocation will kill the browser tab.
- echelon 3y agoI'm building a list of "second class citizen" mobile web issues for Android and Apple. I wasn't aware of this one! Do you know of anything else like this?
- jsheard 3y agohttps://github.com/WebAssembly/design/issues/1397 https://github.com/WebAssembly/design/issues/1397 > Currently allocating more than ~300MB of memory is not reliable on Chrome on Android without resorting to Chrome-specific workarounds, nor in Safari on iOS. That's about allocating CPU memory but the GPU memory situation is similar. The specs don't want to reveal information about how much memory you're allowed to use because it could be used for fingerprinting, but that means that it's practically impossible to build reliable applications which use (or can optionally use) a lot of memory. Every allocation you make past a few hundred MB risks blowing up the app immediately, or putting it into the danger zone where it's the first in line to get killed when running in the background, either way without any warning or last-chance opportunity to release memory to avert getting killed.
- a_wild_dandan 3y agoCould the solution be a user permission dialog? Similar to how browsers implement webcam/etc permissions: “Enable <website> full GPU access? (Default: Off)”
- FractalHQ 3y agoI’m not sure your average user would know what that means, let alone the implications.
- jmayes 3y agoNot sure if this is useful for you as not mobile specific but these were issues I bought up with the W3C back in 2020 some of which may be of interest to you too: https://www.w3.org/2020/06/machine-learning-workshop/talks/opportunities_and_challenges_for_tensorflow_js_and_beyond.html https://www.w3.org/2020/06/machine-learning-workshop/talks/o...
- basil-rash 3y agoCould you share the list? I may have things to add.