11 ms·
Preventing app removal on iOS
- rolph 2y ago"since users cannot exit from the app to the home screen while the alarm is going off." i hope they can dial 911 or hit the link to security cams.
- yjftsjthsd-h 2y agoOkay, not so bad as I initially worried: > The key is using Screen Time API of iOS. > After getting approval from the user, the developer can set a flag to deny app removal. > This feature must be opt-in. To enable the flag, you should explicitly get approval from the user.
- naltroc 2y agobut also, like, it only runs in certain conditions it sounds like here. Can this line of code be always running? What if the app launches itself as a background process? For a feature I just learned about so many questions, but it's Apple in their store so hedges betting it isn't as dangerous as it sounds. But perks your ears up
- throwanem 2y agoBy design, apps run in background on iOS only as the system permits. Mostly they don't, except for a limited time in response to notifications, and in some other such sharply circumscribed situations. I strongly doubt an app asserting this flag would pass review without giving the user a way to opt freely back out in the app's settings. That goes double for the flag being entitlement-gated, one social reason for which requirement would be that it structurally signals a need for closer review. (I don't have an inside source at Apple, but my experience of their review process prompts the inference.) The intent is to offer a user the option to strengthen a precommitment, not to offer an app dev the option to permanently infest a device. You can play games in app review, but only up to a point. Trying something like that seems like a good way to get deservedly permabanned. Granted, I still wouldn't use the app, because I don't need it. But if I did, I'd feel pretty OK about enabling that feature. I might expect it to annoy me enough and aid me so little I'd turn it off again, but I'd see no need whatsoever to worry about being stuck with it.
- gordonfish 2y agoWhat I'm wondering is, why would any app need to actually prevent uninstallation (and thus violate a fundamental right of the user to control their device), when it seems what such app makers would want is to prevent closing the app / escaping to the home screen. How many people actually decide to uninstall an alarm app as it's going off?
- throwanem 2y agoPresumably enough to make it worth Apple's while to implement the option under an umbrella entitlement over tools that may help support perhaps flagging self-discipline. Presumably too, it was worth the app dev's while to go through the effort and process of implementing the assertion. I have some mild doubts about the fundamental efficacy of such an approach, but its motivation seems clear enough. For any more than that you're asking quite the wrong person, I'm afraid. For one, I don't intuitively understand the use case; the way this works for me is that I set my phone to play reveille when I need to wake up, and when it does, I do. That makes convenient use of some early training which is all well and good for me personally, but it leaves me little able to speak to the concerns of those for whom nothing so simple can serve.
- andai 2y agoDo I understand correctly that bleary eyed users were uninstalling the alarm rather than turning it off? (Because by design it's a hassle to turn it off, i.e. to ensure user stays awake for at least some length of time?) That's pretty funny. My friend (an absolute bear of sleepiness) had a "wifi alarm clock" back in the day: he had to actually stumble over to his router (get a certain wifi signal level) for the alarm to switch off!
- neilv 2y agoClever. A student once made a whimsical motorized alarm clock that could drive around the bedroom, the idea being that the drowsy person would wake up in course of chasing it. Another student made an alarm clock on the computer, which would require them to be alert enough to solve a differential equation.
- koolba 2y ago> Another student made an alarm clock on the computer, which would require them to be alert enough to solve a differential equation. That seems like it’d end badly after a rough night. Not only can you not keep sleeping, you can’t function enough to shut off the alarm so you just lie in bed without actually resting. Worst of all worlds. I love it!
- teddyh 2y ago> whimsical motorized alarm clock that could drive around the bedroom It’s called “Clocky”: <https://en.wikipedia.org/w/index.php?title=Clocky&oldid=1221689225 https://en.wikipedia.org/w/index.php?title=Clocky&oldid=1221...>
- playingalong 2y agoFunny. Stallman wouldn't be happy to allow software which you cannot overrule.
- m463 2y agoThis is a case of magnificent mindful past you overruling lazy negligent present you.
- micromacrofoot 2y agoStallman isn't allowed to be in the same room as an iPhone
- ipsento606 2y agoIt's really a matter of perspective. On the one hand, it's creating a situation where a user cannot uninstall the app. On the other hand, it's _allowing_ a user to prevent themselves from being able to uninstall the app under some circumstances. Whether this is ultimately a net increase or decrease in user freedom is an exercise in judgement.
- josephcsible 2y agoIMO, it's a net decrease, because past owners shouldn't be able to bind future owners. The fact that it's your past self binding your future self, rather than the usual case of the manufacturer binding the end-user, is irrelevant.
- DistractionRect 2y agoBut really, this isn't about overruling software, it's about overruling yourself. Past self has implemented a mandate that future self get up at this time. Future self is a sleepy, lazy, point of sale that can't be trusted. Sample size of 1. I used to "wake up" and turn off my alarm and have zero recollection of it. I got the most annoying mechanical clock and packed it in a box that I had to unpack before I could turn it off. It got louder as I removed the packaging. The prolonged activity in order to shut off the alarm is ultimately what helped me fully wake up.
- jtbayly 2y agoBut... then how do you delete it if you actually want it gone? Surely there is a workaround, right?
- atrus 2y agoAs stated in the article, that flag is only flipped while the alarm is going off. Also the feature in general is opt-in, and you have to be approved by apple for that feature.
- jtbayly 2y agoThanks. Somehow I missed that it is only enabled while the alarm is going off. I did see that it was opt-in and needed approval. But then I was worried about opting in.
- deleted 2y ago[deleted]
- deleted 2y ago[deleted]
- paxys 2y agoNeat hack, but there's zero chance their app actually gets approval to use that API.
- pests 2y agoLove how confidently incorrect some people can be.
- kassner 2y agoIt got, about a month ago: https://apps.apple.com/se/app/superalarm-alarm-clock-sleep/id6480463426?l=en-GB https://apps.apple.com/se/app/superalarm-alarm-clock-sleep/i... v2.5.1
- dkarras 2y agodid you read the article? author says you get approval from Apple for your use case then it is kosher.
- cobertos 2y agoNever could I have imagined users wanting apps to have more control of them, but here we are with a pretty compelling use case for not letting them remove an app. Neat
- EGreg 2y agoSo this is a real thing? As long as your app qualifies for that entitlement, you can do this? Also, what about force-quitting the app? Couldn't users just do that?
- benatkin 2y agoI like the idea of apps and components being able to have wide ranges of privileges and those being communicated to the user. I like what the author is doing and everything I don’t like about it - the unfairness of Apple’s gatekeeping and the lack of involvement of the user - is from Apple. It makes me think of this article I recently read about web components as machines. Perhaps it’s only loosely related, but I feel like it’s worth the tradeoff for the system to create the illusion of components being in charge, even though everything goes through the system, whether it be a web server, a web page, or an operating system. https://www.abeautifulsite.net/posts/component-machines/ https://www.abeautifulsite.net/posts/component-machines/ What this app attempts to do is to make the alarm be a little bit more like clocky which could do what it did because it was a physical machine. https://en.m.wikipedia.org/wiki/Clocky https://en.m.wikipedia.org/wiki/Clocky
- StableAlkyne 2y agoIs there any malware exploiting this feature? I can imagine "can never be uninstalled" would be a desirable quality. Especially if the flag doesn't expire, a bad actor could upload a flashlight app with this requirement, let the 20% or whatever tech savvy users balk at the permission, then update later to constantly serve ads or spy or whatever to the remaining 80%, who are now unable to uninstall. Alternatively, a standard skinner-box inspired mobile game that refuses to uninstall after you've become addicted and traded the ability to uninstall for 500 PremiumBucks or whatever. I'm legitimately surprised this is a permission that exists outside of the root user
- labcomputer 2y ago[flagged]
- mistercheph 2y agoOr they could just not provide an API that allows applications to take super-user control over your device in a way that you, the owner of the device, are not authorized to stop. Just putting some possible solutions out there. :)
- HnUser12 2y agoYou can always disable screen time permission and uninstall it. Also apps must get a special permission for using this API from Apple, if that’s any consolation.
- pityJuke 2y agoI'd assume that's why there is a separate review process to gain entitlement to this API, no? (Don't know how this works outside of the App Store, which is an interesting question.)
- nesk_ 2y agoI had something like that nearly 10 years ago on my Android. I had to walk to my kitchen and scan a QR code on my fridge. Really effective! When I didn’t power off the phone.
- prmoustache 2y ago> The most frequent complaint from users was that they could easily turn off alarms by simply removing the app. Why would people do that? And why should we prevent this it if that is what they want. I don't understand.
- greyface- 2y agoPeople are not always completely lucid immediately upon their alarm clock going off. Have you ever woken up several hours late, only to find that your alarm clock did go off at the scheduled time, but you disabled it and resumed sleeping before fully waking up?
- prmoustache 2y agoWell I am the kind who get out of bed, go to pee and shower. I hate when my partner is using snooze or set up multiple alarms, it feels like torture to me. However here we mention people uninstalling the app instead of hitting snooze or disabling it. It sounds weird to me.
- littke 2y agoYou can still uninstall the app after you go to Settings > Screen Time and then remove permissions for the app. Once you know, it’s easy to do. Most people don’t know, so this probably does what the author is intending.
- mst 2y agoEven if you do know the object of the exercise is more "add extra steps" so half awake brain is less likely to manage it without you waking up enough to curse and get up anyway. Then again, back on my N900 half awake brain once managed to pop a root shell, ps | grep, and kill -9 the alarm clock app without me having any memory of it (the shell was still open when I woke up naturally some time later or I'd never have known what happened).
- _yb2s 2y agoIt seems like this could have some awful unintended consequences... e.g. you setup an alarm that can only be deactivated by scanning a QR code in the next room to force yourself out of bed, but forget to disable it on a business trip- and it goes off during an important early morning meeting and cannot be silenced as you aren't home. I suspect this is almost always not a great solution to this problem. When I was a young adult I used aggressive alarm measures to get out of bed on time, such as having a very loud alarm clock on the far end of the room, where I had to actually get out of bed to silence it. I discovered realized needing to do this was caused by a number of fixable health/lifestyle issues: going to bed too late, not getting enough daylight and exercise to sync my circadian rhythm correctly, too much screen time and bright lights before bed, too much coffee late in the day, etc. Nowadays I go to bed by ~8pm everyday, fall asleep quickly, and am up early. I haven't needed an alarm even for important very early events in almost a decade.
- sunaookami 2y ago>and it goes off during an important early morning meeting and cannot be silenced as you aren't home Couldn't you just forcefully turn the phone off? https://support.apple.com/guide/iphone/iph8903c3ee6/ios https://support.apple.com/guide/iphone/iph8903c3ee6/ios
- kvmet 2y agoI have an alarm clock like this and still use it almost daily. The one that I use has an alternate dismissal method for anything fixed to a certain location. (Barcodes, etc.) My sleep has gotten consistent enough over the years that I could probably get by without it, but it did help significantly with building the habits in the first place.
- ratg13 2y agoWhat would it matter if it’s a QR alarm clock or a regular alarm clock? If you forget to disable either, the result is the the same. I do agree with your other observations, and done the same to regulate my sleep to not need an alarm.
- turtlebits 2y agoWhile this solves app installation, does this prevent users from killing the app, or even easier, just restarting the device?
- black_puppydog 2y agoJust for the record: if you need this type of app, what you really need is a change of sleeping habits. Notably, you need to sleep more.
- ratmeadow 2y agoMaybe we need to work on creating a society where we are not forced to constantly wake up super early and then spend the entire day working...
- jmull 2y agoIf you need to sleep more, but need to get up at a specific time, you could…
- crazygringo 2y agoSometimes there are forces outside of your control, that you can't. Whether it's family obligations or online university courses or whatever else.
- vivzkestrel 2y agowe need something that disables all mobile phones across the world between 10 pm and 7 am on every timezone
- rockbruno 2y agoI've tried this and the article misses a huge point. It looks like this prevents _every_ app on the phone from being uninstalled, not just the one declaring it.
- whereismyacc 2y agoi tried an app like this at some point, the one where you had to solve a puzzle. I was just terrified that one day I'd set the wrong alarm and have it blaring during a university lecture when I couldn't turn it off.