37 lines
1.1 KiB
Dart
37 lines
1.1 KiB
Dart
import 'dart:async';
|
||
|
||
import 'package:flutter_smart_dialog/flutter_smart_dialog.dart';
|
||
import 'package:get/get.dart';
|
||
import 'package:flutter/material.dart';
|
||
import 'package:hive/hive.dart';
|
||
// import 'package:pilipala/pages/dynamics/index.dart';
|
||
import 'package:pilipala/utils/storage.dart';
|
||
import 'package:pilipala/utils/utils.dart';
|
||
|
||
class MainController extends GetxController {
|
||
final StreamController<bool> bottomBarStream =
|
||
StreamController<bool>.broadcast();
|
||
Box setting = GStrorage.setting;
|
||
DateTime? _lastPressedAt;
|
||
|
||
@override
|
||
void onInit() {
|
||
super.onInit();
|
||
if (setting.get(SettingBoxKey.autoUpdate, defaultValue: false)) {
|
||
Utils.checkUpdata();
|
||
}
|
||
}
|
||
|
||
Future<bool> onBackPressed(BuildContext context) {
|
||
if (_lastPressedAt == null ||
|
||
DateTime.now().difference(_lastPressedAt!) >
|
||
const Duration(seconds: 2)) {
|
||
// 两次点击时间间隔超过2秒,重新记录时间戳
|
||
_lastPressedAt = DateTime.now();
|
||
SmartDialog.showToast("再按一次退出Pili");
|
||
return Future.value(false); // 不退出应用
|
||
}
|
||
return Future.value(true); // 退出应用
|
||
}
|
||
}
|