vibration 1.8.3 vibration: ^1.8.3 copied to clipboard
A plugin for handling Vibration API on iOS, Android, and web.
import 'package:flutter/material.dart';
import 'package:vibration/vibration.dart';
void main() => runApp(VibratingApp());
class VibratingApp extends StatelessWidget {
@override
Widget build(BuildContext context) {
return MaterialApp(
home: Scaffold(
appBar: AppBar(
title: const Text('Vibration Plugin example app'),
),
body: Builder(
builder: (BuildContext context) {
return Center(
child: Column(
children: <Widget>[
ElevatedButton(
child: Text('Vibrate for default 500ms'),
onPressed: () {
Vibration.vibrate();
},
),
ElevatedButton(
child: Text('Vibrate for 1000ms'),
onPressed: () {
Vibration.vibrate(duration: 1000);
},
),
ElevatedButton(
child: Text('Vibrate with pattern'),
onPressed: () {
final snackBar = SnackBar(
content: Text(
'Pattern: wait 0.5s, vibrate 1s, wait 0.5s, vibrate 2s, wait 0.5s, vibrate 3s, wait 0.5s, vibrate 0.5s',
),
);
ScaffoldMessenger.of(context).showSnackBar(snackBar);
Vibration.vibrate(
pattern: [500, 1000, 500, 2000, 500, 3000, 500, 500],
);
},
),
ElevatedButton(
child: Text('Vibrate with pattern and amplitude'),
onPressed: () {
final snackBar = SnackBar(
content: Text(
'Pattern: wait 0.5s, vibrate 1s, wait 0.5s, vibrate 2s, wait 0.5s, vibrate 3s, wait 0.5s, vibrate 0.5s',
),
);
ScaffoldMessenger.of(context).showSnackBar(snackBar);
Vibration.vibrate(
pattern: [500, 1000, 500, 2000, 500, 3000, 500, 500],
intensities: [0, 128, 0, 255, 0, 64, 0, 255],
);
},
)
],
),
);
},
),
),
);
}
}