新学 Flutter,请教个 Flutter 相关问题
想写一个功能,对服务器进行每 5 秒 1 次请求,如果达到最大尝试次数,就跳转到屏保页面,现在遇到个问题,就是在我更改了全局变量后,终端依旧会对之前的全局配置进行错误请求。
[@override](/user/override)
void initState() {
super.initState();
setState(() {
if (Global.serverAddress == "") {
Global.serverAddress = "127.0.0.1";
Global.serverPort = "80";
}
this.host = Global.serverAddress + ":" + Global.serverPort;
print("++++++++++++++++++++++++++++++++++++++++++++");
print(this.host);
});
timer = Timer.periodic(Duration(seconds: 5), (Timer t) => get());
}
get() async {
var full = "http://" + this.host + "/data.json";
var url = Uri.parse(full);
var response = await http.get(url);
Map data = json.decode(response.body);
setState(() {
wrongTry++;
setComputeState(data);
});
}
当我从其他页面把配置改成"192.168.100.156"后,虽然画面渲染是 OK 的,但是后台还是不停的对之前的错误地址 127.0.0.1 进行重试,这是什么原因呢?
I/flutter ( 5764): ++++++++++++++++++++++++++++++++++++++++++++
I/flutter ( 5764): 192.168.100.156:8085
E/flutter ( 5764): [ERROR:flutter/lib/ui/ui_dart_state.cc(199)] Unhandled Exception: SocketException: OS Error: Connection refused, errno = 111, address = 127.0.0.1, port = 51088
E/flutter ( 5764):
E/flutter ( 5764): [ERROR:flutter/lib/ui/ui_dart_state.cc(199)] Unhandled Exception: SocketException: OS Error: Connection refused, errno = 111, address = 127.0.0.1, port = 51092
E/flutter ( 5764):
E/flutter ( 5764): [ERROR:flutter/lib/ui/ui_dart_state.cc(199)] Unhandled Exception: SocketException: OS Error: Connection refused, errno = 111, address = 127.0.0.1, port = 51096
E/flutter ( 5764):
E/flutter ( 5764): [ERROR:flutter/lib/ui/ui_dart_state.cc(199)] Unhandled Exception: SocketException: OS Error: Connection refused, errno = 111, address = 127.0.0.1, port = 51100
新学 Flutter,请教个 Flutter 相关问题
更多关于新学 Flutter,请教个 Flutter 相关问题的实战系列教程也可以访问 https://www.itying.com/category-92-b0.html
2 回复
之前的 timer 没 cancel 掉。
更多关于新学 Flutter,请教个 Flutter 相关问题的实战系列教程也可以访问 https://www.itying.com/category-92-b0.html
作为IT技术人员,很高兴你对Flutter感兴趣,以下是对你提问的简要回答:
Flutter是Google推出的开源移动应用开发框架,它使用Dart语言进行开发,允许开发者使用同一套代码库构建跨平台的移动应用。这意味着,你可以用相同的代码同时为Android和iOS创建应用,极大地降低了开发成本并提升了开发效率。
对于初学者来说,Flutter的生态系统活跃,社区支持强大,这是非常有利的学习条件。你可以从以下几个方面入手学习:
- 基础入门:学习Dart语言的基础知识,掌握Flutter SDK的下载、环境配置和项目创建。
- UI构建:了解Widget概念,学习使用不同类型的Widget来构建用户界面。
- 状态管理:掌握Flutter中的状态管理方式,如setState、Provider等。
- 导航和路由:了解Flutter中的导航和路由机制,实现页面之间的切换。
- 数据存储:学习如何在Flutter中使用数据存储解决方案,如SharedPreferences、SQLite等。
此外,Flutter官方网站提供了丰富的文档和教程,社区中也有大量的资源和讨论,这些都是学习Flutter的好帮手。祝你学习顺利!