7.3 离线登录处理

7.3 离线登录处理

离线登录是指用户重新打开 app 后,无需登录 login,直接操作。

实现步骤:


第 1 步:界面切换顺序

img

  • Splash 界面每次启动都会运行,有点像 index.html

第一次运行进入 Welcome 界面

之后启动直接进入 Main 界面

购物的时候需要 Login 界面

没有账号进入 Register 界面

注册需要 Pin 界面

注册完成进入 Login 界面

登录完成进入上一个业务界面,比如 Order

第 2 步:Splash 界面

lib/pages/system/splash/controller.dart

1
2
3
4
5
6
7
8
9
void _jumpToPage() {
Future.delayed(const Duration(seconds: 1)).then((_) {
if (!ConfigService.to.isFirstOpen) {
Get.offAllNamed(RouteNames.main);
} else {
Get.offAllNamed(RouteNames.systemWelcome);
}
});
}
1
2
3
4
5
6
7
8
9
10
11
@override
void onReady() {
super.onReady();

// 删除设备启动图
FlutterNativeSplash.remove();

// 去首页
_jumpToPage();

}

第 3 步:Main 界面

lib/pages/system/main/controller.dart

1
2
3
4
5
6
7
8
9
_initData() async {
// 读取用户 profile
await UserService.to.getProfile();

// 测试用
Get.toNamed(RouteNames.systemLogin);

update(["main"]);
}

提交代码到 git