import 'dart:io'; import 'package:flutter/cupertino.dart'; import 'package:flutter/gestures.dart'; import 'package:flutter/material.dart'; import 'package:get/get.dart'; import 'package:star_lock/appRouters.dart'; import 'package:star_lock/common/XSConstantMacro/XSConstantMacro.dart'; import 'package:star_lock/tools/storage.dart'; class AppFirstEnterHandle { Future getAppFirstEnter(BuildContext widgetContext) async { var isFirstTime = await Storage.getString(isFirstEnter); if (isFirstTime != isFirstEnter) { showPrivacyAgreementAlert(widgetContext); } } //隐私协议弹窗 void showPrivacyAgreementAlert(BuildContext widgetContext) { showCupertinoDialog( context: widgetContext, builder: (context) { return CupertinoAlertDialog( title: const Text('用户协议和隐私政策概要\n'), content: Text.rich( TextSpan( text: '感谢您使用本应用。我们非常重视您的个人信息和隐私保护,在使用本产品之前,请认真阅读', style: const TextStyle(fontSize: 16.0), children: [ TextSpan( text: '《用户协议》', style: const TextStyle( color: Colors.blue, decoration: TextDecoration.underline), recognizer: TapGestureRecognizer() ..onTap = () { // 处理用户协议点击事件 Get.toNamed(Routers.webviewShowPage, arguments: { "url": XSConstantMacro.userAgreementURL, "title": '用户协议' }); }, ), const TextSpan(text: '和'), TextSpan( text: '《隐私政策》', style: const TextStyle( color: Colors.blue, decoration: TextDecoration.underline), recognizer: TapGestureRecognizer() ..onTap = () { // 处理隐私政策点击事件 Get.toNamed(Routers.webviewShowPage, arguments: { "url": XSConstantMacro.privacyPolicyURL, "title": '隐私政策' }); }, ), const TextSpan( text: '的全部内容。点击“同意”即表示您同意并接受全部条款。若选择不同意,将无法使用我们的产品和服务,并会退出应用。'), ], ), ), actions: [ CupertinoDialogAction( child: const Text( '不同意', style: TextStyle(color: Colors.black), ), onPressed: () { _exitApp(); }, ), CupertinoDialogAction( child: const Text( '同意', style: TextStyle(color: Colors.blue), ), onPressed: () { Storage.setString(isFirstEnter, isFirstEnter); Navigator.of(context).pop(); }, ), ], ); }, ); } // _launchURL(String url) async { // if (await canLaunchUrl(Uri.parse(url))) { // await launchUrl(Uri.parse(url)); // } else { // throw '无法打开链接 $url'; // } // } void _exitApp() { exit(0); // 退出应用程序 } }