NoSuchMethodError : 'play'메소드가 null에서 호출되었습니다.

Aug 19 2020

저는 flutter 프로그래밍이 처음이고, 오디오 플레이어 앱을 만들려고했고, audioplayers 패키지를 사용하고 있습니다. 두 개의 버튼을 만들고 싶습니다. 하나는 오디오 재생 용이고 다른 하나는 오디오 중지 용입니다. 내가 시도한 것 : 나는이 스레드 중지 오디오를 참조 하고 동일한 작업을 수행했지만이 오류가 발생했습니다.

E/flutter (18681): [ERROR:flutter/lib/ui/ui_dart_state.cc(166)] Unhandled Exception: NoSuchMethodError: The method 'play' was called on null. 
E/flutter (18681): Receiver: null 
E/flutter (18681): Tried calling: play("audio/blind.mp3")

내 코드 :

AudioCache cache;  
AudioPlayer player;

.
.
.
.
child: InkWell(
                onTap: () async {
                  player = await cache.play('audio/blind.mp3');
                }
.
.
.
.
. 
child: InkWell(
                onTap: () {
                   player?.stop();
                   print('working');
                }

여기서 무엇이 잘못 되었습니까?

답변

GuillaumeRoux Aug 19 2020 at 19:40

변수를 초기화하지 않습니다 cache. 객체가 다음과 같지 않은지 확인 하려면 initState또는 build메서드 내에서 이와 같은 작업을 수행 해야합니다 null.

cache = AudioCache();