我是Android开发新手
我在一个android应用程序中工作,它可以简单地改变音量并播放哔哔声“以预览当前音量”
我使用startTone类中的ToneGenerator来生成此哔哔声,如下所示:

 ToneGenerator tg = new ToneGenerator(AudioManager.STREAM_RING, 100);
 tg.startTone(ToneGenerator.TONE_PROP_BEEP);

但有时这段代码不起作用并生成以下异常
11-20 00:32:44.262: E/AudioTrack(4701): AudioFlinger could not create track, status: -12
11-20 00:32:44.262: E/ToneGenerator(4701): AudioTrack->initCheck failed

谢谢。

最佳答案

我知道现在已经太晚了,但我正在发布答案,任何人都会迟些来。
它只是释放ToneGenerator的已创建对象,因为快速创建'tonegenerator'的对象而不释放它们将导致应用程序崩溃。
完整代码:

    final ToneGenerator tg = new ToneGenerator(AudioManager.STREAM_NOTIFICATION, 100);
    tg.startTone(ToneGenerator.TONE_PROP_BEEP);
    tg.release();

10-06 13:33