| 12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455 |
- import 'dart:async';
- import 'dart:io';
- import 'package:flutter/services.dart';
- import 'package:get/get_utils/src/platform/platform.dart';
- import 'package:injectable/injectable.dart';
- import 'package:location/base/base_controller.dart';
- import 'package:location/dialog/agreement_dialog.dart';
- import 'package:location/module/main/main_page.dart';
- import 'package:location/sdk/umeng/umeng_helper.dart';
- import '../../utils/privacy_compliance.dart';
- @injectable
- class SplashController extends BaseController {
- final splashDelayedTime = 2;
- @override
- void onReady() {
- final isAgreePrivacy = PrivacyCompliance.isAgreePrivacyPolicy();
- if (isAgreePrivacy) {
- isAgreePrivacyNextStep(splashDelayedTime);
- } else {
- AgreementDialog.show(cancelClick: () {
- exitApp();
- }, sureClick: () async {
- await _agreePrivacy();
- isAgreePrivacyNextStep(0);
- });
- }
- }
- void isAgreePrivacyNextStep(int splashDelayedTime) {
- _goMain(Duration(seconds: splashDelayedTime));
- }
- void _goMain(Duration delayTime, {Map<String, dynamic>? arguments}) {
- Timer(delayTime, () {
- MainPage.start(arguments: arguments);
- });
- }
- void exitApp() {
- if (GetPlatform.isAndroid) {
- SystemNavigator.pop();
- } else {
- exit(0);
- }
- }
- _agreePrivacy() async {
- await UmengHelper.setPolicyGrantResult(true);
- await PrivacyCompliance.setPrivacyPolicy(true);
- }
- }
|