nova_alarm_plugin 0.0.2 nova_alarm_plugin: ^0.0.2 copied to clipboard
设置定时和日历的工具.
import 'dart:io';
import 'package:flutter/material.dart';
import 'package:nova_alarm_plugin/nova_alarm_plugin.dart';
void main() => runApp(MyApp());
class MyApp extends StatefulWidget {
@override
_MyAppState createState() => _MyAppState();
}
class _MyAppState extends State<MyApp> {
final TextEditingController titleController =
new TextEditingController(text: "title");
final TextEditingController contentController =
new TextEditingController(text: "content");
@override
void initState() {
super.initState();
}
void requestPermission() async {
if(Platform.isAndroid){
await NovaAlarmPlugin.requestCalendarPermission();
}else{
await NovaAlarmPlugin.requestClockPermission();
}
}
void getClock() async {
bool result = await NovaAlarmPlugin.isClockAvailable();
print("getClock $result");
}
void setClock() async {
var dateTime = new DateTime.now();
String time = (dateTime.millisecondsSinceEpoch + 90 * 1000).toString();
print(time);
bool result = await NovaAlarmPlugin.setClock(
time,
"clockId100",
title: "title-test",
content: "content-test1",
);
print("setClock $result");
// bool result = await FlutterClockPlugin.setClock(
// dateTime.millisecond.toString(), titleController.text,
// title: titleController.text, content: contentController.text);
// print("setClock$result");
}
void cancelClock() async {
bool result = await NovaAlarmPlugin.closeClock();
print("cancelClock$result");
}
void insertCalendarEvent() async{
var now = new DateTime.now();
var dateTime = new DateTime(now.year,now.month,now.day+3,now.hour,now.minute);
var beginTime = dateTime.millisecondsSinceEpoch;
await NovaAlarmPlugin.insertCalenderEvent(beginTime, "大姨妈来了", "大姨妈来了好疼",3,repeatDay: true);
}
void deleteCalendarEvent() async {
await NovaAlarmPlugin.deleteCalendarEvent("大姨妈来了");
print("editCalendarEvent");
}
@override
Widget build(BuildContext context) {
return MaterialApp(
home: Scaffold(
appBar: AppBar(
title: const Text('Plugin Clock app'),
),
body: Center(
child: Column(
children: <Widget>[
Wrap(
children: <Widget>[
SizedBox(
width: 10,
),
RaisedButton(
onPressed: requestPermission, child: Text("请求权限")),
SizedBox(
width: 10,
),
RaisedButton(onPressed: getClock, child: Text("通知是否可")),
SizedBox(
width: 10,
),
RaisedButton(onPressed: setClock, child: Text("设置闹钟")),
SizedBox(
width: 10,
),
RaisedButton(
onPressed: cancelClock, child: Text("取消指定title闹钟")),
SizedBox(
width: 10,
),
RaisedButton(
onPressed: insertCalendarEvent, child: Text("添加日历")),
SizedBox(
width: 10,
),
RaisedButton(
onPressed: deleteCalendarEvent, child: Text("删除日历")),
SizedBox(
width: 10,
),
],
),
TextField(
controller: titleController,
),
TextField(
controller: contentController,
),
],
),
),
),
);
}
}