Sunday, 4 December 2011

MIUI annoyance

I've just installed MIUI to tackle a bug with Llama not being able to set call volume. When Llama changes the volume, this message appears in the LogCat:

Phone Related Audio Settings Permission Denial: setStreamVolume() from pid=2266, uid=10041

This is related to a feature in MIUI which seems to automatically deny applications the call-related permissions, unless you opt-in to them (which I think is a good idea, but the implementation is not perfect). You need to do these steps to enable the permission:

  • Go to the super-user app
  • Go to Llama's app details
  • Set the misleadingly named 'monitor calls' to allow. Llama can now adjust the volume

What MIUI should be doing is notifying you that a permission was denied and offering you a way to fix it. That why you can see why an app is misbehaving. Instead, this just looks like Llama doesn't work properly, which is not very helpful for me (I get emails) and you (you have to email me).

MIUI should also split out the potentially privacy invading 'monitor your calls' permission from the more harmless 'change the volume of your ringer' permission.

I'll be adding a MIUI-specific bodge to Llama that will popup a message informing you how to fix it. Sadface .