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

首先看AppLifecycleState

  • resumed 对应android的onResume,ios的applicationDidBecomeActive
  • inactive 对应android的onPause, ios的applicationWillResignActive
  • paused 对应android的onStop, ios的applicationDidEnterBackground
  • detached 对应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原生生命周期函数都有实现,效果跟原生开发是一致的。

flutter代码中使用Android/ios原生生命周期相关推荐

  1. ae制h5文字动画_大杀器Bodymovin和Lottie:把AE动画转换成HTML5/Android/iOS原生动画

    前段时间听部门老大说,Airbnb出了个移动端的动画库Lottie,可以和一个名叫Bodymovin的AE插件结合起来,把在AE上做好的动画导出为json文件,然后以Android/iOS原生动画的形 ...

  2. android 2048 动画,大杀器Bodymovin和Lottie:把AE动画转换成HTML5/Android/iOS原生动画

    前段时间听部门老大说,Airbnb出了个移动端的动画库Lottie,可以和一个名叫Bodymovin的AE插件结合起来,把在AE上做好的动画导出为json文件,然后以Android/iOS原生动画的形 ...

  3. android中应用程序生命周期,Android应用程序生命周期中的活动和图标

    面向大众的移动技术,第3部分 为您的Android移动应用程序添加导航样式 安德鲁·格洛弗 2013年7月25日发布 面向大众的移动技术 请期待本系列的后续内容. 请期待本系列的后续内容. 近年来,移 ...

  4. Android 广播的生命周期

    一:Android 广播的生命周期          一个广播接收者有一个回调方法:void onReceive(Context curContext, Intent broadcastMsg).当一 ...

  5. Android笔记 activity生命周期 Tasks and back stack回退栈

    正常打开一个应用,先后调用Activity的onCreate.onStart.onResume 正常退出一个应用,先后调用Activity的onPause.onStop.onDestroy(进程被杀死 ...

  6. HOME键窥探Android的Activity生命周期

    HOME键窥探Android的Activity生命周期 好久没有写技术博客了,前两篇博客写的都是一些自己的所见所闻和心里感受,今天说一说Android中的Activity的生命周期,此篇文章使用HOM ...

  7. 深入理解 Android Activity的生命周期

    深入理解 Android Activity的生命周期 2010-10-13 14:08:29|  分类: Android |  标签:周期  调用  activity  android  protec ...

  8. Pittkai——Android折叠屏生命周期

    Android折叠屏生命周期 (第一次在CSDN上写文章,随便写写,记录一下) 如今随着手机的发展,屏幕从分屏甚至走上了折叠屏的道路,即将推出的谷歌Android Q系统更是支持了折叠屏,但苦于手头没 ...

  9. [react] react中修改prop引发的生命周期有哪几个?

    [react] react中修改prop引发的生命周期有哪几个? static getDerivedStateFromPropsshouldComponentUpdaterendergetSnapsh ...

  10. 【Android笔记】Android MediaPlayer的生命周期

    Android MediaPlayer的生命周期 MediaPlayer的状态转换图也表征了它的生命周期,搞清楚这个图可以帮助我们在使用

最新文章

  1. 项目四-用循环求(1)
  2. 【EventBus】事件通信框架 ( 取消注册 | 获取事件参数类型 | 根据事件类型获取订阅者 | 移除相关订阅者 )
  3. python定义字符串1hdhdjdjd_python基础总结(字符串)
  4. python列表实现原理_Python动态类型实现原理及过程解析
  5. 【数学与算法】支持向量机、线性判别 详细数学原理
  6. 1.6 Java字节流的使用:字节输入/输出流、文件输入/输出流、字节数组输入/输出流
  7. 产品经理如何开始数据分析之路?(基础知识)
  8. 自定义View时,用到Paint Canvas的一些温故,讲讲平时一些效果是怎么画的(基础篇 一)...
  9. centos安装下载桌面
  10. 汽车辐射监测系统-Qt开发
  11. Django学习知识点、路线图、资料总结大全,建议收藏!
  12. 一文了解人工智能——学科介绍、发展史、三大学派
  13. mave工程dependencyManagement与dependencies区别
  14. 数据结构学习之基数排序(含C++代码)
  15. word添加参考文献和标注的方法
  16. 什么是HTTP代理?HTTP代理的作用
  17. 「开源」快速接入微信微博QQ钉钉登录分享
  18. 面试官:说一下Redis和MongoDB的区别?
  19. 第十三课 类族结构的进化
  20. 基于arduino的5路循迹小车(1)

热门文章

  1. BIOS里的 CSM 是什么意思?
  2. c语言卡诺图算法实现,多变量卡诺图化简的算法实现.pdf
  3. java idisposable_IDisposable实现 - 'if (disposing)'应该怎么做
  4. 莱昂哈德·欧拉生平及其成就简介
  5. maya python window_安装了Anaconda之后,Maya运行报错,Python 找不到 Maya 的 Python 模块...
  6. 基于cropper.js封装vue在线图片裁剪组件
  7. Error: Some file crunching failed
  8. App下载的视频导进电脑中生成.mp4文件的方法
  9. Python杨辉三角形
  10. 麻省理工学院计算机科学与工程博士,2020美国麻省理工大学计算机科学博士专排...