This happens frequently enough to make me believe the unplugging has some influence on it, but it doesn't happen all the time, so I'm not quite sure...
I can think of two options to find out who's responsible:
- Detect which apps/services are launching (not receiving!) the Voice Command intent;
- Detect which apps/services can handle the Action Headset Plug intent, since that seems to be causing all the trouble;
the idea being that once I find out who is screwing up, I can take the necessary steps to solve the issue.
Does anybody know of an app which can help me? Hopefully without needing to root my device? I own a Motorola Milestone 2, with standard-issue Android 2.3.6.
Capturing the log (with LogCollector) just after reproducing the problem yields (after a LOT of stuff):
11-21 15:23:57.014 W/Vold ( 1209): Ignoring unknown switch 'No Device'
11-21 15:23:57.030 D/MediaButtonSettingReceiver(22525): onReceive: ACTION_MEDIA_BUTTON but user has disabled us
11-21 15:23:57.030 V/HeadsetObserver( 1376): Headset UEVENT: {SUBSYSTEM=switch, SWITCH_STATE=0, DEVPATH=/devices/virtual/switch/h2w, SEQNUM=10716, ACTION=change, SWITCH_NAME=No Device}
11-21 15:23:57.061 I/ActivityManager( 1376): Starting: Intent { act=android.intent.action.VOICE_COMMAND flg=0x10000000 cmp=com.nuance.android.vsuite.vsuiteapp/.VSuiteStartSession } from pid 1459
11-21 15:23:57.069 D/LockPlayer(22525): ONPAUSE
11-21 15:23:57.077 V/LockPlayer(22525): Current heap: 10032928/10240000
11-21 15:23:57.093 I/ActivityManager( 1376): Start proc com.nuance.android.vsuite.vsuiteapp for activity com.nuance.android.vsuite.vsuiteapp/.VSuiteStartSession: pid=23777 uid=10033 gids={3001, 3002, 3003}
Elixir reveals Cell broadcast (com.android.phone
) as the process with pid 1459.
Well, crap. Still at a loss...