我写了这段代码,很明显有缺陷。我该如何创建一个服务,以便不断检查音量的变化?服务中不能使用键盘监听器,请不要用音量键监听器回答此问题。
我的代码是错误的,因为while循环的条件是虚假的。我的服务需要什么条件才能检查音量变化而不崩溃?它不能是isScreenOn(),因为在听音乐时可以改变音量并关闭屏幕。 代码
我的代码是错误的,因为while循环的条件是虚假的。我的服务需要什么条件才能检查音量变化而不崩溃?它不能是isScreenOn(),因为在听音乐时可以改变音量并关闭屏幕。 代码
AudioManager audio = (AudioManager) getSystemService(Context.AUDIO_SERVICE);
int currentVolume = audio.getStreamVolume(AudioManager.STREAM_RING);
int newVolume=0;
while(1==1)
{
newVolume = audio.getStreamVolume(AudioManager.STREAM_RING);
if(currentVolume!=newVolume)
{
Toast.makeText(this, "Volume change detected!", Toast.LENGTH_LONG).show();
}
}