2000字范文,分享全网优秀范文,学习好帮手!
2000字范文 > flutter代码中使用Android/ios原生生命周期

flutter代码中使用Android/ios原生生命周期

时间:2024-03-23 05:47:58

相关推荐

flutter代码中使用Android/ios原生生命周期

如果你是从原生开发转flutter的,使用flutter开发的时候,有没有遇到一些操作是让人疑惑的,例如原生的生命周期为什么在flutter里面没有实现呢。
其实flutter有对应的app生命周期函数的,那就是WidgetsBindingObserver 在这个WidgetsBindingObserver的类里面有个didChangeAppLifecycleState函数,参数AppLifecycleState就是我们app的生命周期执行的过程。

首先看AppLifecycleState

resumed 对应android的onResume,ios的applicationDidBecomeActiveinactive 对应android的onPause, ios的applicationWillResignActivepaused 对应android的onStop, ios的applicationDidEnterBackgrounddetached 对应android的onDestroy ios的applicationWillTerminate

其实以上的四个生命周期函数理论上也是够用的。

对比原生来说,是不是少了几个生命周期函数,如果有些复杂的业务,我们需要用到复杂的生命周期函数怎么办,在这里其实也有很多flutter pub的插件封装,我们可以直接使用。

例如app_life这个插件 点击查看

需要向flutter下面的原生类里面注册需要的生命周期函数

android

ios

接下来就是在自己需要使用原生生命周期的页面 with LifeManageCall类,

在 initState函数使用LifeManage.instance!.addObserver(this);注册插件即可。

@override

void initState() {

super.initState();

LifeManage.instance!.addObserver(this);

}

android和ios原生生命周期函数都有实现,效果跟原生开发是一致的。

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。