my biggest peeve with the Android security model from day #1 is that this kind of thing is even possible.
every Android application has to be specifically granted a set of permissions on installation, including "able to make phonecalls that cost you money", "able to access the internet", etc. the problem is that the user only ever see this list once, fleetingly, during installation, and as everyone knows, familiarity breeds contempt so after the first couple of apps, most people stop reading the list and just click "yes". even if they read the list, once it's been authorized the application can do anything on its permission list at any time, without user intervention. this opens the gate to applications that can take photos doing so silently while the screen is off, applications that can make phonecalls doing so invisibly and undetectably, applications that can use the internet and use gps phoning home at any time with your exact location, etc. it simply shouldn't be possible.
whenever an application attempts to perform a restricted task, the OS checks that it has been granted the permission to do so and either silently permits the task, or silently disallows it. that's great, but it shouldn't stop there. the first time it's attempted a dialog box should alert the user that "steamy windows is attempting to make a phone call to that can cost you money. do you want to authorize this? yes/no/ [ x ] remember my answer and don't ask me again".
clearly "steamy windows" is going to get a "no and don't let it do it in future response", whereas the user is likely to grant "mywonderSMSclient" indefinite permission.
if there's a reason why this isn't practical, i'd like to know about it.