6 ms·
I'd prefer Apple to fix horrible notifications on iOS. Since they broke VoIP background notifications, developers have no way to reliably perform silent deliver
by Andrew_nenakhov 6y ago
I'd prefer Apple to fix horrible notifications on iOS. Since they broke VoIP background notifications, developers have no way to reliably perform silent delivery of information to device.
For example in a chat app that syncs with desktop you can deliver incoming messages, showing them as alerts, but you can't deliver your own, because you MUST show alert on every push notification. Another use case is removing notifications: once you message on another device, you want to remove notification on iOS as well. With current notifications it is extremely problematic.
(Remaining background notifications in iOS work like shit - and please, do not start discussion that 'it is not needed' - It is BADLY needed, just ask anyone who has developer experience with this wreck)
- tomrod 6y ago> Since they broke VoIP background notifications, developers have no way to reliably perform silent delivery of information to device. Surely you mean fixed, not broken, as absolutely no one should be delivering information silently to a device they don't own.
- wizzwizz4 6y agoThe Apple philosophy is “give users zero agency” – and from that stance, yes, this is a fix. But I remember the days when a computer program was either a game, an extension of the user's will or the BIOS; by that philosophy, this should absolutely be possible. (But computers have been artificially complexified to the point that this isn't viable.)
- catlifeonmars 6y ago> an extension of the user’s will I quite like this particular viewpoint. I’m stealing this philosophy for the next time I am designing a CLI.
- Andrew_nenakhov 6y ago> as absolutely no one should be delivering information silently to a device they don't own. That's a very very very shallow thinking. You are advocating to break the internet. You are destroying every internet protocol that ever existed. They all silently deliver information to devices you likely don't own. Actually, we wouldn't need these dirty perversions with notifications if we had a proper background mode for apps. Like, you know, proper computers had for maybe 60 years.
- kitsunesoba 6y ago> Actually, we wouldn't need these dirty perversions with notifications if we had a proper background mode for apps. Like, you know, proper computers had for maybe 60 years. It's worth noting, however, that desktop and laptop PCs have a surplus of energy relative to mobile phones, so it's no big deal if there's a bunch of processes running in the background doing their thing… usually, anyway, because on PCs it's also shockingly common for background processes to misbehave and consume far more resources than they have any right to. Point in case, the daemon for my Logitech mouse will sometimes consume 120% CPU for no apparent reason for extended periods if I allow it to run. I could see an argument for extending background capabilities in iOS while also heavily also reducing their potential for bad behavior, though. For example, allowing apps to run in the background indefinitely, but on low power cores only with heavily capped CPU and memory consumption, along with a new Settings page that shows a list of persistent background processes and gives the user direct control over them.
- Andrew_nenakhov 6y agoI agree. User should decide, how he will use his battery power. If an app requires background running, it should be allowed to, with full control over data and battery used. That's all users need.
- TeMPOraL 6y agoOr, give people easy to use task manager that shows background processes, with big buttons labeled "kill", and "kill and keep down". Android doesn't have anything like it either. It's my number 1 complaint about smartphone experience ever since I bought my first one: the phone actively refuses to give user insight and control over what's running on their device.
- varenc 6y agoI’m with you. Story time: Years ago the Signal app would silently wake up in the background, upload 20MB+ of my contacts’ photos, and then shutdown and do it all over again every time I received a silent notification. Due to my membership in a few large groups this was very often. The result was gigabytes of cellar data usage in a week. Fortunately my experience was rare because I both had a lot of contacts with photos and I ran the desktop app. But it was infuriating to track down and it made me realize that silent wake ups were even possible on iOS. (Or used to be) I don’t know what the right balance is, but I think there should be some middle ground.
- Andrew_nenakhov 6y agoFun fact: Apple still allows signal, telegram, WhatsApp and few other high profile developers to use VoIP notifications without mandatory calling up VoiceKit. Because they can't work as smooth as users are used to they work with these new rules for notifications. So, no, nothing 'improved' in your Signal experience. At least, not yet. All developers are equal, but some are more equal than others.
- girvo 6y agoTo be honest, all developers have never been equal. At least not over the last 20 years that I’ve been paying attention.
- Andrew_nenakhov 6y agoOn deaktops, neither windows nor dlinux do not behave differently depending on developer's name. I see no reason why mobile devices should be any different. I wonder if there are grounds for anti-monopoly lawsuits.
- girvo 6y agoWindows absolutely does: it has a large collection of various hacks in place to detect specific applications to keep the running across newer versions of Windows. This is neat in a technical sense, but you’ve gotta be on Microsoft’s radar and worth it for them to put that sort of effort in for you. On top of that, the partner support you used to get from Microsoft if you were a developer they cared about was orders of magnitude more helpful and useful than what you’d get if you weren’t a preferred partner. Linux, you’re more correct I’d think.
- deleted 6y ago[deleted]
- matchbok 6y agoHuh? We use silent pushes all the time to sync stuff. Works great.
- Andrew_nenakhov 6y agoSilent pushes don't work at all if you swipe the all. AT ALL.
- reader_mode 6y agoWhy would you need to notify user of his own messages ? Can't you just do a sync pull once the chat is up ? I feel like using notifications to deliver messages is unreliable anyway you are going to sync on focus.
- Andrew_nenakhov 6y agoIt's not for the purpose of notifications, it's for the purpose of sync. If you do not initiate sync process after even own messages, immediately after launch of the app you'll see only incoming messages, and own will load up after a significant delay. That is not what chat users are used to these days. Also: read markers. You definitely want notifications of messages you've read elsewhere to disappear from the iPhone. Currently, there is no good way to do that.
- tdrp 6y agoWe've also run an app with 1 million+ users for a few years, and I can confirm that notifications are a wreck on both platforms, but IMO even more so on Android/FCM. In fact most of our calculations show that we have never gone past 85% delivery of high-pri Android notifications to valid FCM tokens. By high-pri here we mean direct chat messages in an active 1-on-1 chat conversation. This has caused many users to abandon the app since they assume the system to be unreliable. One of the main reasons seems to be that many Android phone vendors have simply whitelisted WhatsApp, Facebook and a couple of famous apps and then dumped every single other app into some kind of "kill if in background and completely forget about it" bucket. In some cases it can be fixed by asking the users to wander deep into the phone settings and toggle some switches. We brought the delivery rate from the low 80s to 85% by literally buying a bunch of the phone models we had heard had issues and trying to repro what was happening then popping up custom instructions for users like "looks like you are running this kind of phone which in general will not deliver notifications, please go to settings -> blah". But the whole thing has been a gigantic game of cat and mouse which really shouldn't be in the hands of individual app developers. In many cases the FCM system does not return any error code. I'd be curious to hear if anyone here has achieved 95%+ FCM delivery rates on Android apps.
- cameronh90 6y agoUntil last week I would have been confused by this, but last week my Pixel 4 broke. While waiting for it to be repaired, I bought a cheap Chinese phone to use as a backup - not sure of the brand but it cost £200. I don't know what the fuck they did to the operating system, but notifications are completely unreliable. I think there's possibly some aggressive app termination going on, maybe for battery or memory usage. Either way, most of the time I would only get a notification once I open the app. Some apps seem to be more reliable than others - maybe due to whitelisting as you say. In hindsight, Google allowing these no-QA phones to use the Android branding was a big mistake.
- Too 6y agoKilling idle apps, including Services, is a feature in Android to conserve battery life and to give memory to Activities in more recent use. This might not be as noticeable on high-end-phones. A lot of shitty written apps are not aware of this and think they can run some while loop in the background to poll their own backend 10 times per second. Eventually that will get killed. The solution to this is the push apis, or for apps that truly need a background loop to present a persistent notification aka "foreground-service", so the user is aware something heavy is going on in the background. Hearing FCM, which is the suggested push solution, having delivery issues above is not very comfortable.
- thebigman433 6y ago> Another use case is removing notifications: once you message on another device, you want to remove notification on iOS as well. With current notifications it is extremely problematic What is wrong with this at the moment? Ive noticed Discord does this and it works perfectly fine for me. Its the only app I have thats relevant to this feature, so I just assumed it was fine for everything.
- cameronh90 6y agoI have no idea why, as I'm not an iOS developer, but I have to say this is one of the most annoying things about my iPad. On my android, most notifications disappear if I pick up the message on another device, but invariably my iPad notification center is full of rubbish I've already dealt with elsewhere. I mostly just leave the iPad in do not disturb and never check the notifications.
- Andrew_nenakhov 6y agoIt is likely that discord still uses 'old' VoIP notifications that worked well before iOS 12/13 dropped the hammer on them and forced developers to always show callkit on every voip notification. With those notifications, it wasn't really a problem, but apple killed them because some developers (Facebook?) abused them to gather location and other data.