NoSuchMethodError: Phương thức 'play' được gọi trên null
Aug 19 2020
Tôi mới làm quen với lập trình chập chờn, tôi đã cố gắng tạo một ứng dụng trình phát âm thanh và tôi đang sử dụng gói audioplayers . Tôi muốn tạo hai nút, một để phát âm thanh và nút kia để dừng âm thanh. Tôi đã thử điều gì: Tôi đã tham chiếu đến chuỗi này Dừng phát âm thanh và thực hiện tương tự nhưng gặp lỗi này:
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")
Mã của tôi:
AudioCache cache;
AudioPlayer player;
.
.
.
.
child: InkWell(
onTap: () async {
player = await cache.play('audio/blind.mp3');
}
.
.
.
.
.
child: InkWell(
onTap: () {
player?.stop();
print('working');
}
có gì sai ở đây?
Trả lời
GuillaumeRoux Aug 19 2020 at 19:40
Bạn không bao giờ khởi tạo biến của mình cache. Bạn nên làm điều gì đó như thế này bên trong một initStatehoặc trong một buildphương thức để đảm bảo rằng đối tượng của bạn không phải là null:
cache = AudioCache();