Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/dart/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Flutter 我想在颤振应用程序启动时执行一个函数_Flutter_Dart - Fatal编程技术网

Flutter 我想在颤振应用程序启动时执行一个函数

Flutter 我想在颤振应用程序启动时执行一个函数,flutter,dart,Flutter,Dart,我想在应用程序启动时向服务器发送一个ID并接收json 流动 1.启动我的应用程序(显示启动屏幕) 2.对服务器的Json请求 3.如果有数据,显示第1页。如果没有,则显示第2页 @override void initState() { super.initState(); Timer( Duration(seconds: 3),// you can do your stuff here when splash screen run () => Navigator

我想在应用程序启动时向服务器发送一个ID并接收json

流动 1.启动我的应用程序(显示启动屏幕) 2.对服务器的Json请求 3.如果有数据,显示第1页。如果没有,则显示第2页

@override
void initState() {
super.initState();
Timer(
    Duration(seconds: 3),// you can do your stuff here when splash screen run

        () => Navigator.of(context).pushReplacement(MaterialPageRoute(
        builder: (BuildContext context) => LoginScreen())));}

请把这段代码放到spalsh屏幕上

看来你需要更多地了解颤振,我的建议是从这段代码开始,这段代码将为你提供基础,让你更容易学习其余的代码,也就是说,要获得一个数据库,我正在使用这段代码:

//lib/services/networking_service.dart

import 'dart:convert';
import 'package:flutter/material.dart';
import 'package:http/http.dart' as http;

class NetworkHelper {
  final String json;
  final url = 'HERE YOU CAN PUT YOUR API URL';

  NetworkHelper(this.json);

  Map<String, String> headers = {
    "Content-type": "application/x-www-form-urlencoded"
  };

  Future getData(BuildContext context) async {
    http.Response response = await http.post(url, body: json, headers: headers);

    if (response.statusCode == 200) {
      Map<String, dynamic> decodedResp = jsonDecode(response.body);
      print(decodedResp);
      return decodedResp;
    } else {
      print(response.statusCode);
      return null;
    }
  }
}

如果你需要更多的帮助,我很乐意帮助你,但是考虑一下学习的过程,它会变得更容易和愉快。

使用<代码> StjultBuffe<代码>,它在打开页面和构建小部件时运行。

    @override
  void initState() {
    super.initState();
 SchedulerBinding.instance.addPostFrameCallback((_) {
  // your code after page opens,splash keeps open until work is done
});
}

你试过什么??你面临的问题是什么?我还没有尝试过。我想在应用程序启动时从服务器获取数据。但我不知道怎么做。可能会有所帮助。请尝试以下文章:
    @override
  void initState() {
    super.initState();
 SchedulerBinding.instance.addPostFrameCallback((_) {
  // your code after page opens,splash keeps open until work is done
});
}