如何检查用户是否首次打开我的应用(Flutter应用,飞镖代码)

Abdullrahman Wasfi |

我是flutter的初学者,我创建了我的应用程序,但是我想检查用户是否在安装后第一次打开该应用程序,我看过这篇文章但不知道该怎么做?

这是启动画面代码,该代码在3秒钟后将用户直接移动到主屏幕,但是我想检查用户是否是第一次打开应用并将用户移动到“欢迎”屏幕,还是如果用户不是第一次将用户移动到“主屏幕”。

import 'dart:async';
import 'package:flutter/material.dart';
import 'package:book_pen/main.dart';
import 'package:book_pen/Welcome.dart';

void main() {
  runApp(new MaterialApp(
    home: new SplashScreen(),
    routes: <String, WidgetBuilder>{
      '/HomePage': (BuildContext context) => new HomePage(),
      '/WelcomePage': (BuildContext context) => new WelcomePage()
    },
  ));
}

class SplashScreen extends StatefulWidget {
  @override
  _SplashScreenState createState() => new _SplashScreenState();
}

class _SplashScreenState extends State<SplashScreen> {
  startTime() async {
    var _duration = new Duration(seconds: 3);

    return new Timer(_duration, navigationPageHome);
  }

  void navigationPageHome() {
    Navigator.of(context).pushReplacementNamed('/HomePage');
  }

  void navigationPageWel() {
    Navigator.of(context).pushReplacementNamed('/WelcomePage');
  }

  @override
  void initState() {
    super.initState();
    startTime();
  }

@override
  Widget build(BuildContext context) {
    Size size = MediaQuery.of(context).size;
    return Scaffold(
      body: Stack(
        children: <Widget>[
          Center(
            child: new Image.asset(
              'assets/images/SplashBack.jpg',
              width: size.width,
              height: size.height,
              fit: BoxFit.fill,
            ),
          ),
          Center(
              child: new Image.asset(
            'assets/images/BigPurppleSecSh.png',
            height: 150,
            width: 300,
          )),
        ],
      ),
    );
  }
}

Paresh Mangukiya

这是没有任何错误并清楚说明的代码

class _SplashScreenState extends State<SplashScreen> {

  Future<bool> isFirstTime() async {
     var isFirstTime = SharedPref.pref.getBool('first_time');
     if (isFirstTime != null && !isFirstTime) {
       SharedPref.pref.setBool('first_time', false);
       return false;
     } else {
       SharedPref.pref.setBool('first_time', false);
       return true;
     }
  }

  @override
  void initState() {
    super.initState();

    Timer(Duration(seconds: 3), () {
    isFirstTime().then((isFirstTime) {
      isFirstTime ? print("First time") : print("Not first time");
     });
    }
   );
  }

}

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

如何检查用户是否首次访问我的iOS应用?

检查是否在LIBGDX中首次打开了应用程序

检查应用程序是否首次在Flutter上运行

检查Android中我的应用程序的首次用户

安装后如何检查应用程序是否首次运行?

我如何从手表应用程序检查用户是否登录电话应用程序

如何让我的代码响应用户输入

如何确定用户是否关闭了已由 Excel 代码打开的 Access 应用程序

如何在我的 Flutter 应用程序中保持用户的登录会话打开?

如何检查用户是否首次登录?

如何检查Android应用首次运行-Cordova

我需要检查用户在驾驶过程中是否打开了 facebook 或 whats 应用程序

如何检查我的Web应用程序的用户是否尝试使用其他凭据登录?

Google OAuth-如何检查用户是否已允许访问我的应用程序

使用社交媒体登录后,如何检查用户是否选择不授予我的应用访问权限?

我如何检查用户是否在 c# 中以管理员身份运行应用程序?

如何检查文件是否在我的应用程序中被其他代码引用?

如何使WSCoachMarksView演练仅在用户首次打开应用程序时运行?

如何检查是否有可以打开特定文件的应用

如何在android中检查应用程序是否打开

我如何检查Filedialog中的Selecteditems是否已被用户打开?

如何检查用户是否已安装应用程序?

如何检查是否有用户登录应用程序

如何从我的 Flutter 应用程序打开 Telegram 聊天?

如何检查Flutter应用程序是否在调试中运行?

如何仅在首次运行应用程序时在我的iOS应用程序中打开页面视图控制器?

检查是否在启动期间首次使用该应用程序

如何为我的Android应用程序创建首次安装时用户的教程

我如何从watchOS 2中检查iPhone上的应用程序是否打开,并且无论应用程序状态如何都能发送NSUserDefaults?