6 ms·
Rovio explains why Angry Birds update needs SMS permission
- dododo 16y agoi wish i could refuse to give android apps certain permissions yet still install them. i don't want angry birds to ever be able to charge me money and certainly not read all my SMS messages. i simply won't upgrade. for other apps, i just have to not install them; it doesn't seem like i can give feedback to app developers about this.
- drivebyacct2 16y agoUnfortunately this change would require changes to the platform that would break all current applications. I find it funny, Android informs you as to what applications can access and people are more leary, even when the developer is up front about it. On other platforms, the user never has a chance to even be skeptical at all.
- marcc 16y agoIn defense of other platforms, apps can't read your text messages, email, etc. Sure, there are ways to do it using private APIs, etc, but if you get caught, you get removed. Android is wide open, and knowing that it's trivial for someone to write an app which reads my email/SMS is scary. That said, the iOS SDK certainly lets a developer read my address book without informing me. You'd think Apple would put something up, like a permissions screen or at least something to let me know this is happening.
- tomjen3 16y agoNot really. Android is sometimes used on tablets that can't send SMSs, or you could be out of range or even in airplane mode. Just return the same error code you would if there was a physical problem and continue.
- drivebyacct2 16y agoUm no... the application would not just receive the same error code unless Google specifically set it up just for that permission, and that strategy wouldn't work for any other permissions. Think about it, the manifest specifies that the application will have access to whatever it asks for... the application would just crash when the VM/kernel denies it access to other applications data or some system permission because the user is given the ability to override it. Not having an active connection to receive an SMS is a completely unrelated and irrelevant point. I find it really super awesome that this is downvoted. Yes, an application that expects a permission to be available, randomly not being able to access is sure to not cause problems. Not just -1 too, we really have to ram this post into the ground, no reply, just watched my karma drop like 10 points. I expected better. Keep it coming guys, teach me my lesson without actually replying!
- SoftwareMaven 16y agoI think there is a middle ground. Certainly, there are going to be some permissions an app can't function without (e.g. you can't have a phone dialer work that doesn't have access to the phone). On the other hand, there are permissions that are purely optional to an application (such as the afore-mentioned SMS). It would be better to specify "required permissions" and "enhanced feature permissions". I require the phone permission to run. I can use the SMS feature to make your experience better.
- drivebyacct2 16y agoI'm not saying it is a bad idea. I really like it in fact. I really don't think it will work as smoothly as (apparently everyone) seems to think. Android wasn't built to have this feature... and I'm not sure that even this middle ground could be done in a way that doesn't break many existing applications.
- wzdd 16y agoI don't think it would work either. Take an app that needs, say, wake locks, Internet access, and SMS access. Say further than none of them is strictly required. Now imagine that users can deny this access on a per-permission basis. Now instead of having one app to test, you have 2 ^ 3. It's not as easy as using existing error codes, because some of these things normally don't break -- in which case it would be excusable to have fairly basic error handling. Displaying a message and allowing the user to restart the app is a fair distance (in terms of app complexity) from being required to produce an app that not only keeps running but does "the right thing" for all possible degradations of required permissions. EDIT: I don't meant to sound pessimistic. I do really like the idea, but it seems like it would make the dev / test cycle a lot longer.
- saurik 16y agoExactly! People install software onto other systems every single day onto systems that do not have capability-based security (including iOS, for the record, which gives application a lot of implicit access to data like your address book), and they never think twice about trusting it, but as soon as you mention what is available to the app, even with an explicit and well reasoned statement about why you are getting access to something you aren't using, people (like this poster) get /angry/, not just confused but /angry/, and start taking positions like "I will not install your software at all"... it's pure madness.
- rbritton 16y agoThis sounds similar to something on iOS 4.2. If you use any part of the asset library framework, which includes something as benign as building a photo chooser for the media library, the device prompts the user to allow access to location services because the photos might have GPS information in them. There is no way to prevent it because the permissions are not fine-grained enough. In the case of the article, the problem could be solved on the OS with the separation of SMS access and operator billing as permissions.
- ben1040 16y agoThere are other permission granularity problems on Android, too. I wrote a streaming media player and want to listen for when the phone rings or goes off hook so I can pause. In order to this I need to access a permission that lets me read IMEI, carrier info, phone number, etc. That's too much info, and it makes my app look skeezy to be requesting access to that when all I want to do is not have music playing down the speaker while the user is on a call.
- panacea 16y agoToo granular and it's an endless set of "are you sure?" prompts which users are likely to develop a blind-spot to... Not granular enough and you grant root-access to everything when you first install a 'flash-light' app. Finding the right balance? Worthwhile.
- JonnieCache 16y agoThere is no separation between operator billing and SMS as I understand it. An "operator billing" payment is simply a very expensive SMS. The differentiation all happens at the provider's end. This makes it a very flexible system, it has been in use pretty much since SMS became popular. How do you think those kids were paying for all those ringtones a few years ago? (before you could just put any mp3 on your phone easily)
- dtwwtd 16y agoI find it interesting that Rovio is choosing to build its own payment system rather than use the options that Google is integrating into the Android platform. I don't have a problem with granting these permissions to an app that I use that comes from a well known, trusted developer. Also, the features that require the permissions aren't used unless you actually make the decision to use them. So while the developers really should make sure they educate their users before taking their money, in the end it falls on the users to make the decision to buy.
- jkaljundi 16y agoFor one thing, Google in app payments via carrier billing are not available yet. When it will be, I would not bet too many of the world's ~200 countries will be supported, just a few key markets. Same with Android Market itself, it works in just a tiny mnumber of countries: http://market.android.com/support/bin/answer.py?answer=138294&hl=en http://market.android.com/support/bin/answer.py?answer=13829... Compare that to mobile payment operators, who's key job is to work on carrier agreements across the world. That's why the likes of Rovio choose companies like Fortumo: http://www.socialtimes.com/2010/06/fortumo-launches-international-in-app-payments-for-android/ http://www.socialtimes.com/2010/06/fortumo-launches-internat...
- yardie 16y agoProbably because the Google payment options are woefully inadequate. I'm sorry it really is. There are few developers that have the resources to roll their own payment systems and Rovio just happens to be one of them.
- msl 16y agoIt's not very surprising that they decided to do this, especially since it was first (and so far only) launched in Finland. I don't know about the rest of the world, but Finns are quite used to paying for things with their mobile phones. Giving your credit card number for a smart phone app or an online store does, however, not seem like a very safe thing to do for a lot of people not used to deal with these things. I'm not sure if those people use Android phones very much, but I am quite sure this will make it much more appealing for many to pay for the extra content.
- raganwald 16y agoNow of course people seem to trust Rovio. But if another app asked me for permission to use SMS, could it surreptitiously engage SMS billing where carriers support it?
- m_eiman 16y agoSure, there's no fundamental difference between a "premium" SMS and normal one. Except maybe the shorter phone number.
- Lyote 16y agoIt'd be nice if the Android Market had a place to explain why certain rights are needed by the developer so this kind of thing doesn't cause such an uproar. You'd still have to take the developers word for it, but at least they'd have a chance to defend themselves before the public gets to worked up about it.
- eli 16y agoThe Android Market is practically hostile to dialogue between developer and user. It's really a shame.
- moomba 16y agoI think the main reason this has become a bigger issue is Automatic Updating in Froyo. Since then, you have to manually update the app if the permissions change. Otherwise, the app will automatically update(if you allow it during installation). I always look at the comments now for an app that requires a manual update. Many times they are introducing adds or farming your data. Unfortunately it makes it so companies that are playing nice will be seen as doing evil. I for instance, did not update Angry Birds until I read this post. I was thinking they were farming my data to help boost their profits.