首页 > 解决方案 > 无法使用滑块按钮播放/停止铃声

问题描述

我尝试在类初始化时播放铃声并使用滑块按钮关闭。初始化时成功创建播放器,但由于以下错误,由于某种原因无法使用滑块按钮将其关闭。

E/flutter(6529):[错误:flutter/lib/ui/ui_dart_state.cc(166)]未处理的异常:MissingPluginException(没有找到方法hasVibrator关于通道振动的实现)E/flutter(6529):#0 MethodChannel._invokeMethod (package:flutter/src/services/platform_channel.dart:154:7) E/flutter (6529): E/flutter (6529): #1 MethodChannel.invokeMethod (package:flutter/src/services/platform_channel.dart:329 :12) E/flutter (6529): #2 Vibration.hasVibrator (package:slider_button/src/vibration.dart:20:43)

但我没有以任何方式使用振动器。以下是我的代码

import 'package:flutter/material.dart';
import 'package:slider_button/slider_button.dart';
import 'package:correcteddistancetrack/Interfaces/ringingtone.dart';


class snoozeScreen extends StatefulWidget {
  @override
  _snoozeScreenState createState() => _snoozeScreenState();
}

class _snoozeScreenState extends State<snoozeScreen> {
  @override
  void initState(){

    RingPhone().ringnow();
    

  }

  @override
  Widget build(BuildContext context) {
    return Scaffold(
      body: Container(
        width: double.infinity,
        height: double.infinity,
        decoration: BoxDecoration(
          //color: Colors.red,
          gradient: LinearGradient(
            begin: Alignment.centerLeft,
            end: Alignment.centerRight,
            colors: [Colors.blueAccent,Colors.greenAccent]
          ),
        ),
        child: Column(
          mainAxisAlignment: MainAxisAlignment.center,
          children: [
            SliderButton(
              label: Text("Slide to stop alarm",style: TextStyle(fontSize: 25),),
              icon: Icon(Icons.alarm,size: 40,),
              action: (){
                RingPhone().stopNow();
                
                //Navigator.pop(context);
                },
              width: 320,
            ),
          ],
        ),
      ),
    );
  }
}

如果有人可以提供帮助,真的很感激

标签: flutter

解决方案


默认情况下它是真的,你做vibrationFlag: false,它应该工作


推荐阅读