私のアプリケーションは、サウンドの再生が終了したことを UI に通知する必要があります。これを実現するには、SoundChannel オブジェクトの SOUND_COMPLETE イベントにリスナーをアタッチします。
イベント処理が完了したら、SOUND_COMPLETE イベント リスナーを削除する必要がありますか?
private function playbackCompleteHandler(event:Event):void {
// Notify UI that playback is done etc
channel.removeEventListener(Event.SOUND_COMPLETE, playbackCompleteHandler);
}
GC がオブジェクト (この場合は「チャネル」オブジェクト) を適切に収集できるように、常にイベント リスナーを削除する必要があると誰もが言います。しかし、Adobe は公式ドキュメントではそうしていないようです [1][2]。
[1] http://help.adobe.com/en_US/FlashPlatform/reference/actionscript/3/flash/media/SoundChannel.html [2] http://help.adobe.com/en_US/as3/dev/WS5b3ccc516d4fbf351e63e3d118a9b90204 -7d21.html