认识onNewIntent
2017-08-11 10:56
375 查看
前几天面试被问到onNewIntent ,我竟哑口无言 完全没听过这个东西,所以总结经验教训,多学习吧。
一个简单的例子说明:
activityA 启动activityB 并通过intent传递了一些数据,后activityC也需要启动activityB也要传递一些数据,那么这时候就要思考一个问题,如果我们activity的启动模式是standard,那么好说,每次启动activityB的时候都需要重新创建,C给B的数据能够如期而至。但是如果我们的启动模式为singleTop、singleTask、singleInstance。A启动B ,B在栈中,C想要启动B,B并不会重新创建,onCreate方法并不会走,那么从C得到的数据就是不准确的。这时候就可以用到onNewIntent,创建B的时候会走onCreate
但是不会走OnNewIntent,我们可以在onCreate里面get一次数据 C传给B的数据我们就需要在onNewIntent方法中get一次数据,这样就可以确保万无一失的得到的数据是准确的。
注意:在OnNewIntent方法中需要setIntent(intent),才能正确得到数据。
一个简单的例子说明:
activityA 启动activityB 并通过intent传递了一些数据,后activityC也需要启动activityB也要传递一些数据,那么这时候就要思考一个问题,如果我们activity的启动模式是standard,那么好说,每次启动activityB的时候都需要重新创建,C给B的数据能够如期而至。但是如果我们的启动模式为singleTop、singleTask、singleInstance。A启动B ,B在栈中,C想要启动B,B并不会重新创建,onCreate方法并不会走,那么从C得到的数据就是不准确的。这时候就可以用到onNewIntent,创建B的时候会走onCreate
但是不会走OnNewIntent,我们可以在onCreate里面get一次数据 C传给B的数据我们就需要在onNewIntent方法中get一次数据,这样就可以确保万无一失的得到的数据是准确的。
注意:在OnNewIntent方法中需要setIntent(intent),才能正确得到数据。
相关文章推荐
- 使用C++实现JNI接口需要注意的事项
- Android IPC进程间通讯机制
- Android Manifest 用法
- [转载]Activity中ConfigChanges属性的用法
- Android之获取手机上的图片和视频缩略图thumbnails
- Android之使用Http协议实现文件上传功能
- Android学习笔记(二九):嵌入浏览器
- android string.xml文件中的整型和string型代替
- i-jetty环境搭配与编译
- android之定时器AlarmManager
- android wifi 无线调试
- Android Native 绘图方法
- Android java 与 javascript互访(相互调用)的方法例子
- android 代码实现控件之间的间距
- android FragmentPagerAdapter的“标准”配置
- Android"解决"onTouch和onClick的冲突问题
- android:installLocation简析
- android searchView的关闭事件