Rampant Abuse of Push Notifications Is Ruining Them For All Developers
blog.anylistapp.com
blog.anylistapp.com
I get spam robocalls on my iPhone and have no way to block them. I have recently started getting unblockable requests to Facetime with strangers on my Mac -- a service I didn't even know I was logged into. I have an Apple email address that is way behind Gmail on spam prevention. And as noted in the article, iOS notification spam is now an issue.
In contrast, Google has anti-spam as a core corporate competency. They know that where there is a profit motive, there will be spam. They truly think like hackers -- "if I were a bad actor, how would I abuse this feature?" Apple needs to pick this up.
One might argue that by combating spam and noisy advertising, Google makes its own advertising less likely to get ignored (lumped in with the spam), and thus higher value.
Obviously this is a simplistic perspective, but perhaps there's some version of it that makes Google more incentivized to fight spam than Apple might be. Apple is incentivized by a "what makes for the best user experience" which has a more nebulous set of criteria.
All you need to do is to tell a bunch of really smart engineers, "Here is this hugely important problem to solve, you probably aren't smart enough to solve it but we'll listen to what you have to say." And you get every engineer spending their 20% time burning first through the 'easy' fixes which don't actually work and then on to more 'interesting' fixes that kinda do, and finally some real puzzle masters doing things you would not expect but actually nail a lot of spam. And after you've done that then you have a number of people who really get a kick out of this sort of intellectual battle of wits, and you pull them together and make them the 'spam team'. Voila' achievement unlocked.
I've been on gmail since 2004 and even direct my @domain mail there.
I'm coming around to the idea that there is no such thing as free (gratis) software.
+1
Indeed. Somehow I've ended up on a number of phone spammer databases, such that I go through periods of getting 5+ calls per day. (Yes, of course I'm on the national do-not-call list and it's illegal to contact cell phones this way.) On Verizon you can block certain numbers (including "unkown"), though I believe it costs an additional 5$ a month. For the last 5 years or so I've been in the habit of not answering any call from a number not on my contact list, but I'd love a good (cheap) way to block spam calls. (And there aren't any good apps for this... I'm guessing Apple doesn't provide an API to actual phone functionality?)
Just thought I'd mention it in case you didn't know about that strategy and it's helpful for you.
What I'd REALLY prefer would be a way to categorize contacts into priority groups. Family/VIP, who can reach me 24/7/365. Friends who can call most of the time. Other contacts who can reach me daylight/weekday hours. And the rest who roll straight to voicemail. Add a schedulable exception (allow all calls in the next X hours because I'm expecting one from someone whose number I can't identify in advance).
Combine this with a visual voicemail (Google's product is good, but they already own far, far, far too much of my life) and I'd bitch a lot less about phones.
Increasingly: voice calls are very distracting and annoying. Unless you've got very good reason to call me, don't. I don't even get to "please don't call me" any more, I'll simply hang up (on the rare occasions an unwelcome call gets through).
We had a nice system where you could group contacts and depending on both your location and 'status', certain people would either ring through, be prompted that they may be interrupting and ask if they'd like to proceed, or go straight to the cellphone's voicemail.
People loved the demo we'd show them, but very few loved it enough to pay more than a couple bucks a month for the service.
(Unaffiliated, just a customer.)
>> Family/VIP, who can reach me 24/7/365.
Also: a message like "Hi family, I'm asleep/busy, but if you really need me, press 1 to ring me anyway" would be wonderful. They wouldn't worry about calling at a bad time, and you wouldn't get awakened for something trivial.
In general, "what would a good human assistant do?" is a good question for computer systems. A secretary wouldn't wake you unless it was important.
A friend and I actually wrote this exact service, you'd get a number and forward it to whatever, and depending on the who was calling and when (with some rules you would set up), they would either ring through, be prompted that you are busy/sleeping/meeting, or go straight to the cellphone voicemail.
The problem is cost. ALL calls would have to go through this system, (which have a per-minute cost if they aren't over VoIP), so our minimum monthly price for this servce would probably be $15+.
Do you think you would pay that much? Most people loved the demo we showed them, but were hesitant to pay more than a few bucks a month. But, if you think differently I'd love to hear more.
I'd rather not, because this should really be an app, not a service. I'd pay for that app though.
Solution: tell the recruiting firm never, ever, ever to contact me again.
Second solution: take off and nuke Adobe from orbit.
Third solution: ePub for docs, people. It's multi-form-factor fungible, and the readers are vastly, vastly more functional than anything built for PDF.
I think all that automation would backfire. What if you forgot that you added someone to the voicemail list and wonder why you are not receiving calls? It's not that hard to just dismiss the call when it happens.
I'd especially love to see something done in the open-source spirit.
It is indeed quite nice. No jailbreaking, managed in the same place as your contacts, texts, etc. Visible online, all the other benefits of Google Voice which I won't extol in detail.
On other carriers the integration isn't as tight, but the experience is still superior to the iPhone Google Voice experience in that Google Voice on Android integrates with the standard phone dialer so you just make outgoing calls like you normally would using the standard dialer (or any other app which invokes the standard dialer) and they go through Google Voice.
On the iPhone I had to make a custom app (https://bitbucket.org/emilianbold/noblocked/wiki ) just to block calls from hidden numbers.
I guess the current iOS 6 with "Do Not Disturb" might help with that. It's only been 2 years(!) since I wrote my app so I should have waited :-| Oh, wait, iOS 6 doesn't even run on the iPhone 3G this was intended for.
Peter principle of consumer electronics?
As for Google's concern with "bad actors", any search with "ebook" or "download" would tend to demonstrate that as long as they get their vig, Google is quite flexible on what constitutes a "bad actor".
That and a quick look at my Gmail Inbox/Spam-folder indicates that they're still winning the fight.
How about allowing apps that block calls in the app store from third-parties?
A year and a half ago I passed on buying a new iPhone, even though I owned a 3GS and out of frustration I've gone out of my way to buy a Galaxy S. The Android Marketplace (as it was called back then) had several apps for blocking calls, some of them broken on my Galaxy S, but I could find one that worked and solved my problem.
So you know, I'm sure that one day Apple will wake up and provide the very best experience for blocking phone calls and SMS messages. But that's something I've been doing for at least 1 year and a half already, which goes to show just how fucked up is Apple's gatekeeper culture. "So this expensive gadget doesn't solve your real problems, but look how user-friendly it is".
First, you can do so in your AT&T account. I've never tried this but number blocking showed up as a feature a few months ago. I would bet they charge for it, restart your contract, and use it as an excuse to disable any grandfathered unlimited accounts.
On your phone create a new contact called "z_telemarketers of shame". Any time you get a call from a telemarketer, robocall, etc., add that number to that contact. I use the "other" label. And feel free to create more granularity such as robocallers, telemarketers, spam, and so on.
I then set the option for that contact to silent at all times by turning the vibrate and ringer, settings both to none.
In iOS 6 you can take it a bit further by creating a group in your Contacts. You can't create groups on the phone so you will have to do this on your computer. You can then add these callers to this group and configure them as part of your "Do Not Disturb" settings. I don't do this as I prefer to use the feature as intended.
They do still call, and you will still see them light up your phone, but if you aren't paying attention, you won't notice.
Aside from within your AT&T account, at this time, I don't know any way to block before they get to your phone. ( Unless you jailbreak ) If they have a tendency to leave voicemails it can be a bummer.
What I have noticed after doing this is you can get them to stop. The trick seems to be to never answer, let it ring all the way through, don't "clip" the call, shooting them to voicemail right away. Don't give them any indication there will ever be someone to answer the call. Revert your voicemail message to the default so you aren't speaking.
I've gone from several a day down to one every few months with this technique. It took about six months to work. I have about 100 numbers in various callers that start with "z_", which is a convention I made up to push the name to the bottom of the list and keep it mostly out of sight.
Any fun stories to be found there?
There's a trick that works on all of the phones I've checked so far; instead of answering or rejecting the call, push the volume button - it will let the call ring through, but it'll silence the ringtone and stop vibrations. I find it to be one of the most useful (and frequently used) features of my phone.
I actually read them sometimes because they are mildly amusing things like "Gregory's Review: 1/5 stars, didn't work. Developer comments: HOW ABOUT FILING A REAL BUG REPORT SO I CAN HELP YOU INSTEAD OF LEAVING A VAGUE BAD REVIEW."
Does anyone know if this has been addressed in anyway with Apple saying they are considering it or not?
Oh wait -- they do! It's just a shame that most developers don't put anything really useful in there.:(
Anybody can feel free to contact me about this via my profile here, I'd truly be interested in making this flow easier and I know how to write this stuff.
Personally, a "report a problem" link would be a lot more inviting, especially if it let you send them a message from the app store, and include the last crash report (if it was the last one).
So even if you put a link there you need someone to be aware that such a link exists, to believe there might be something useful at the end of that link (which you point out, there rarely is), then wants to go to/turn on their computer, fire up iTunes, attempt to & succeed at finding your app, click the link, possibly register for your bug tracker (doesn't seem too uncommon), possibly check their email to confirm their registration and then finally file a bug report.
There have been a few times where I was lucky enough to be able to track someone down based on their username and personally contact them to help them out, but if they'd gone though official channels for support instead of via a review, it would have been much better for both of us.
I actually would like to see the ability for developers to publicly respond to reviews. Sure, some may abuse it by submitting nasty responses to bad reviews, but good developers would provide useful/polite responses, and that would be another signal users could use to determine if they want to buy the app in the first place.
Easy fix then: a small checkbox on review page "this is a technical problem", which will forward review and contact details for the reviewer to an arbitrary developer bugsystem.
I've never actually had one back which I think I take as a good sign, I don't think I've had a crash report on iTunes Connect either so touch wood it is pretty solid although I'm adding more under the covers error logging at the moment using Parse which makes it pretty easy (saved me a day or so setting up and securing a server to my satisfaction). This will mean I can log from later in a crash (if it happens) than I could from email as I don't need to pop up any views just send it although where possible I will pop up the email option.
Maybe they should fix their own bug tracking before trying something like this...
Bug reports from the general public are simply not of any value. And building a support forum into the app store creates an expectation of support, which for most $1 apps is an unrealistic expectation. The developer has a facility to communicate with the users: the release notes on updates. The users shouldn't get a facility to communicate with the developer, unless the developer wishes to provide that facility outside the app store.
It would be a great first step if developers could at least opt in to an easy feedback channel.
I wouldn't call out specific reviews or even mention the trigger in any push messages although I have put responses to many reviews on my website.
http://human-friendly.com/ (recently redesigned - needs images still) http://itunes.com/apps/fastlists
As has been extensively discussed, there are lots of drawbacks to the App Store model. But if they actually enforced limits on push notifications (or maybe even charged developers for them), it'll slow the tragedy of the commons a bit. I agree that individual users could do the same, but the marginal spammy app still has every incentive to be spammy.
Apple just needs to get a grip and start swinging banhammers, like Facebook did with Zynga. Put troublesome apps in a probation period, where notification strings end up going through an approval process. And punish developers by holding subsequent apps up in the review process.
Add a warning from Apple that any app that is turned off by too many people will be deemed to be too spammy, and taken out of the app store.
This would completely solve the problem. In the absence of any such mechanism, all incentives point towards continued abuse of the feature.
Also the risk of false positives. It'd be possible for an app to have a high rate of disabling push notifications, but not be genuinely spammy.
Edit: not be genuinely spammy
I'm now part of that group who reflexively rejects notification requests. I agree with this article that Apple should take action, but app makers should also realize the cost of abusing their customers.
So we developers can't get rid of our broken stuff because people are afraid to upgrade.
No, fuck you, Zynga. And Dracula shouldn't even be a playable word.
I have deleted some games from my system because they display notification bubbles above the icon or app folder. That drives me insane. A few examples I can call out are Halfbrick studios. Jetpack Joyride and Fruit Ninja both do this too often for my taste and have been removed from my phone because of it. These are particularly bad examples because of how many taps it takes to actually show and clear the notification. I wish there was an opt out with these things as it disturbs my OCD to have a clean desktop and no notification bubbles.
Second reaction: "Perhaps they are doing something right and we should be doing that in our apps. Perhaps younger people actually like such things, after all they get dozens of sms every day and it makes them feel important/liked?"
Source? An actual, non-vague stat? Proof?
How about we compare the pushes to email campaigns by companies?
I for one am constantly amazed at how much users tolerate these emails.
So I say, yes, make it easier to stop the pushes just like it's easy to unsubscribe from email campaigns. It could be as easy as making sure users know that the pushes stop when the app is uninstalled.
But I think outside of other app developers and the tech community, users may not feel as strongly that this is abuse.
Isn't this the kind of abuse that the app store approval process should be addressing? If notifications are supported, then they should be required to be configurable in the Settings app, no exceptions.
And please revise the guidelines such that if in-app purchases are turned off on the phone, showing the user a catalog or purchases screen is grounds for rejection.
heck, i even dislike the notifications when the app is on the foreground (specially the apps begging for rating on the market: when i get one, i just go put one star). but the background ones are TRUE EVIL. :P
Edit: More seriously, all four of those suggestions are very good, and I'd like to see them too. For #4, a deep link to the app's notification settings would be good enough, and probably more likely than getting a notification settings controller in UIKit.
Apps that are increasingly abusing push notifications means that users are increasingly just choosing "Don't Allow" even when push notifications are a key part of a non-spammy app, because they're wary of later being spammed.
Facebook has focused so much at Games that I think it will begin to hurt them when more well-known businesses in other categories try to use their platform to distribute offers.
The are also not subject to a strict interpretation of the app review guidelines.
The only limitation is that they need to be set ahead of time when the app is active, or triggered by one of the background modes (geofencing, significant location change, task completion, Bluetooth LE, etc.)
If that type of notification is unwanted you could, dislike it and it would suppress notifications of that type for ... x days. If you do it enough, it would disable it. If enough of the apps notifications are disliked then the apps notification privileges get suspended all together.
My biggest problem now, however, is getting push notifications from Letterpress at 4AM, because the person I play with is on the other side of the continent.
There should be an adittional setting to require permission for a specified window of time like, say, 1AM to 8AM.
But other than one Zynga game, I never, ever get spam notifications and that Zynga game was installed for about an hour or two.
If I remember correctly, the pushback was before the new notification tray, so it may have been Android's own response to the problem.
Your shock is misplaced, since this issue is rampant on both platforms. Shitty software developers will do anything sleazy to make a quick buck.
I noticed that all of the spam I encountered was from games that had their own in-game currency. After the <blah>ing-With-Friends / Draw Something fads died out and I removed those Zynga games, I can't remember the last time I saw a garbage notification.
Settings -> Apps -> Draw Something -> uncheck "Show notifications"
Screenshot: http://www.cultofandroid.com/16833/jelly-bean-tip-disable-an...