我想知道音频模式(由AudioManager.getMode()返回)何时改变。这样我就可以在模式不是 MODE_NORMAL 时禁用我的应用程序中的功能。显然我可以进行投票,但这对电池不友好并且浪费 CPU。
有来电时有广播意图,但这不可用,因为它还会告诉您传入的电话号码,我不希望我的应用程序获得这些权限。用户切换到不同的应用程序时可能会发生模式更改,在这种情况下我的 Activity 会知道,但是在许多其他情况下音频模式可能会更改,而我只是不知道。
我不能使用 2.2 的 AudioFocus 东西,因为我需要支持 1.6 以后的版本。
编辑:我想停止的功能包括抖动检测和各种计时器。我想在音频模式非正常时进入休眠模式,并在 MODE_NORMAL 上再次激活。