一个Android程序可以由多个Activity和Servier组成,在这些程序组件之间传递数据的方法有以下几种,每种方法都有其特定的使用途径。
1、原始数据类型:
在Activity/Servier之间传递临时性的原始数据,可以使用Intent的putExtras方法来传递数据。若传递的数据需要长久保存,则使用SharedPreference类来完成。
2、传递对象。
当在Activity/Servier之间传递不需要长久保存的对象时,可以使用以下几种途径:
(1)通过Application类,每个Android应用程序都有一个Application类。当你在程序的AndroidManifest.xml中给Application设定一个名字时,你的程序中就必须有一个Application的子类。这个Application子类会被Android自动实例化,并且是一个全家性的类,它的生命周期和程序的生命周期相同,你可以把一些全局性的对象保存在Application类中。Application类可以通过getApplication()获得。
(2 通过HashMap of WeakReferences传递对象。当一个Activity需要向另外一个Activity传递对象时,可以使用一个关键字把对象存在一个HashMap中,并把这个关键字通过Internt的Extras发给目标Activity,目标Activity接到该关键字后使用该关键字把对象冲HashMap中取出。
在Activity/Service之间传递需要长久保存的对象时,可以使用以下的方式:
Application Preferences
Files
contentProviders
SQLite DB
Android如何在Activity和Service之间传递数据
原创
©著作权归作者所有:来自51CTO博客作者宁波阿成的原创作品,请联系作者获取转载授权,否则将追究法律责任
上一篇:自己总结的aix的常用命令
下一篇:AIX光盘备份与恢复
提问和评论都可以,用心的回复会被更多人看到
评论
发布评论
相关文章
-
android service如何和activty传递数据 安卓activity和service
Service的介绍和使用一:Service的概述 Service是Android四大组件中与Activit
Servicce android 访问者 生命周期 优先级 -
python的快捷按键 批量后移
Python3开发常用工具一:为什么使用开发工具?在Python3教程之《安装》中,我们已经安装了Python开发环境,但是在终端里执行相关命令始终是不能开发大型项目的,并且对写过的代码不能保存,因此,Python的开发工具就此诞生,使用window开发环境的,Python自带了一个IDLE可以进行脚本编辑,但是还是不够完善,因此,本文章主要介绍几款常用的Python集成开发环境二:常用的几款Py
python的快捷按键 批量后移 python集成开发环境有哪些快捷键 Python eclipse vim