【Android】8.0 Intent向下一个活动传递数据、返回数据给上一个活动

1.0 Android是使用任务(Task)来管理活动的,活动就像栈一样堆放着在一起。

每个活动的生命周期最多可能会有四种状态:

1.1 运行状态 位于栈顶

1.2 暂停状态 不在栈顶但在界面上仍处于可见状态

1.3 停止状态 不位于栈顶,且在界面上不可见时

1.4 销毁状态 从返回栈中移除之后

2.0 Activity类定义了7个回调方法,覆盖了活动生命周期的每一个环节:

2.1 onCreate()  该方法最为常见了,活动一创建自动有,每个活动都会重写这个方法。

 负责活动的初始化操作,比如加载布局,绑定事件,添加监听等。

2.2 onStart()  该方法在活动由不可见变为可见时调用。

2.3 onResume()  该方法在活动准备好和用户进行交互的时候调用。

 此时活动一定要位于返回栈的栈顶,并处于运行状态。

2.4 onPause()  该方法在系统准备去启动或者恢复另一个活动的时候调用,通常会在这个方法中将一些消耗CPU的资源释放掉,以及保存一些关键数据,但这个方法的执行速度一定要快,不然会影响到新的栈顶活动的使用。

2.5 onStop()  该方法在活动完全不可见的时候调用,它和onPause() 方法的主要区别是,如果启动的新活动是一个对话框式的活动,那么onPause() 方法会得到执行,而onStop()方法并不会执行。

2.6 onDestroy()  该方法在活动被销毁之前调用,之后的活动状态将变为销毁状态。

2.7 onRestart()  该方法在活动由停止状态变为运行状态之前调用,也就是活动被重新启动了。

3.0 以上7种方法除了onRestart(),其他都是两两相对的,从未·可以·将活动分为3种生存期。

3.1 完整生存期  活动在onCreate()方法和onDestroy()方法之间经历的。一般情况下,活动在onCreate()方法中完成各种初始化操作,而在onDestroy()方法中完成释放内存的操作。

3.2 可见生存期  活动在onStart()方法和onStop()方法之间经历的。在可见生存期内活动对于用户总是可见的,即使有可能无法和用户进行交互。用这两个方法可以合理的管理那些对用户可见的资源。比如可以在onStart()方法中对资源进行加载,而在onStop()方法对资源进行释放,从而保证处于停止状态的活动不会占用过多内存。

3.3 前台生存期  活动在onResume()方法和onPause()方法之间经历的。恢复和暂停。在前台生存期内,活动总是处于运行状态的,此时的活动是可以和用户进行交互的,我们平时看到和接触最多的也就是这个状态下的活动。

下面是Android官方提供的一张活动生命周期的示意图,可以帮助咱们理解:

在下一篇博文将通过实际项目体验活动生命周期:

【Android】9.0活动的生命周期(二)——实际代码演示

https://www.cnblogs.com/xiaofu007/p/10327884.html

原文地址:https://www.cnblogs.com/xiaofu007/p/10327590.html

时间: 2024-08-01 20:15:38

【Android】8.0 Intent向下一个活动传递数据、返回数据给上一个活动的相关文章

android webview点击返回键回到上一个html

android webview点击返回键返回上一个html 1 @Override 2 public boolean onKeyDown(int keyCode, KeyEvent event) { 3 if (keyCode == KeyEvent.KEYCODE_BACK && mWebView.canGoBack()) { 4 mWebView.goBack();// 返回前一个页面 5 return true; 6 } 7 return super.onKeyDown(keyCod

android 6.0 Intent 安装apk闪退

需求描述: 利用android系统自带的DownloadManager下载apk文件,并且打开安装界面. 问题描述: 关于DownloadManager的使用网上有很多例子,在此不啰嗦.下载完成之后在android6.0(api=23)环境下打开安装界面出现闪退(确认已经在AndroidManifest.xml文件中配置配置权限).在Android4.4(api=19) 环境下正常.因为只有两台android手机,没有尝试android6.0之前的其他系统.使用代码如下: public stat

Android 7.0 Nougat(牛轧糖)---对开发者来说

android 7.0出来了.让你的app准备迎接最新的android版本吧,支持节省电量和内存,这样新的系统行为.使用多窗口UI.直接恢复通知以及其他操作来扩展你的app. android 7.0介绍了各种各样的新功能给用户和开发者, 本文重点介绍面向开发者的一些新功能. 确保检查android 7.0的行为变化,了解有关平台的变化可能会影响你的app. 如果要了解更多的关于用户的新功能,请查看www.android.com. 1.支持多窗口 在android 7.0中,我们介绍了在支持多窗口

Android学习之Intent传递数据

Intent在Activity中的作用主要是有两个: 1.启动目标Activity 2.传递数据 Intent在传递数据时分两种情况:向下一个Activity传递数据和从下一个Activity返回数据. 一.向下一个Activity传递数据主要是利用Intent作为“信使”来调用, 原Activity需要创建一个intent,并用putExtra(键,值)方法向intent中放入需要传递的信息,然后启动. public void onClick(View view){ String msg =

我们来一探究竟 Android 7.0 适配中 FileProvider 部分

本文标签: Android7.0 FileProvider 由于 Android 7.0 或更高版本的系统在国内手机市场上的占比不是很高,很多 Android 开发人员并没有做 7.0 适配工作,同时测试人员也容易忽视这方面的兼容问题.这导致 7.0 及以上版本的手机用户在使用到应用部分功能时可能出现 App 崩溃闪退.其中,大部分原因都是由项目中使用到 file:// 类型的 URI 所引发的.本文我们便来一探究竟. Android 7.0 权限变更 为了提高私有目录的安全性,防止应用信息的泄

Android 7.0 适配中 FileProvider 部分总结

本文标签: Android7.0 FileProvider 由于 Android 7.0 或更高版本的系统在国内手机市场上的占比不是很高,很多 Android 开发人员并没有做 7.0 适配工作,同时测试人员也容易忽视这方面的兼容问题.这导致 7.0 及以上版本的手机用户在使用到应用部分功能时可能出现 App 崩溃闪退.其中,大部分原因都是由项目中使用到 file:// 类型的 URI 所引发的.本文我们便来一探究竟. Android 7.0 权限变更 为了提高私有目录的安全性,防止应用信息的泄

关于 Android 7.0 适配中 FileProvider 部分的总结

原文地址:http://yifeng.studio/2017/05/03/android-7-0-compat-fileprovider/ 由于 Android 7.0 或更高版本的系统在国内手机市场上的占比不是很高,很多 Android 开发人员并没有做 7.0 适配工作,同时测试人员也容易忽视这方面的兼容问题.这导致 7.0 及以上版本的手机用户在使用到应用部分功能时可能出现 App 崩溃闪退.其中,大部分原因都是由项目中使用到 file:// 类型的 URI 所引发的.本文我们便来一探究竟

Android 7.0行为变化—开发者应该关注的(官网同步翻译)

Android 7.0行为变化-开发者应该关注的(官网同步翻译) 版权声明:转载必须注明本文转自严振杰的博客: http://blog.yanzhenjie.com 如果想了解更多Android7.0的内容,可以顺便再看看Android7.0写给开发者的一封信(官网同步翻译). 如果你的引文够好,推荐你阅读官网文章: Android 7.0 Behavior Changes Android N 除了提供诸多新特性和功能外,还对系统和 API 行为做出了各种变更.本文重点介绍你应该了解并在开发应用

Android 5.0 Lollipop介绍

Android Lollipop介绍 Android 5.0 Lollipop,此版本为用户提供了丰富的新功能,并为开发者新增了数以千计的 API,它进一步扩展了 Android 的应用范围,从手机.平板电脑和可穿戴式设备,扩展到电视和汽车. 1.Android 5.0新增功能与特性 Material Design: 简介:Material Design语言的一些重要功能包括 系统字体Roboto的升级版本 ,同时颜色更鲜艳,动画效果更突出.杜拉特还简要谈到了新框架的一些变化--这个新框架也于今