在实际应用我们经常需要对数据进行交互与保存,但Intent中默认的方法对传输数据是有类型限制的,当我们需要传输或保存一个复杂的泛型数据时,使用Application是一个很好的解决办法。

顾名思义,Application对应整个应用,就如Activity对应当前的活动窗口一样,当我们需要使用它的时候,一定要在AndroidManifest.xml中对它进行声明。

    <applicationandroid:name="MeterApplication"android:allowBackup="true"android:icon="@drawable/ic_launcher"android:label="@string/app_name"android:theme="@style/AppTheme" ></application>

然后我们来到实体类,首先当其他类需要存取或调用的时候,首先调用本类的 getInstance()得到MeterApplication的对象,接下来就可以对不同类型的数据进行get,set操作了,这样形式的好处没有了 一般数据类型的限制,当我们需要跨一个或多个Activity保存或者读取复杂数据的时候,问题就迎刃而解了。

调用方法:  MeterApplication.getInstance().getXXX();   //读取

MeterApplication.getInstance().setXXX(X xxx);//存入

public class MeterApplication extends Application {private List<ReadyTask> DownloadList;private static MeterApplication instance;private HashMap<String, List<ReadyTask>> DownLoadResult;   private List<String> UnitNumList;    private String CurOPNUM;                                     private boolean BlueConStatus;private int CurStauts;   // 当前运行状态
    @Overridepublic void onCreate() {// TODO Auto-generated method stubinstance = this;DownloadList = new ArrayList<ReadyTask>();super.onCreate();}public boolean isBlueConStatus() {return BlueConStatus;}public void setBlueConStatus(boolean blueConStatus) {BlueConStatus = blueConStatus;}public List<String> getUnitNumList() {return UnitNumList;}public void setUnitNumList(List<String> unitNumList) {UnitNumList = unitNumList;}public HashMap<String, List<ReadyTask>> getDownLoadResult() {return DownLoadResult;}public void setDownLoadResult(HashMap<String, List<ReadyTask>> downLoadResult) {DownLoadResult = downLoadResult;}public static MeterApplication getInstance() {return instance;}public List<ReadyTask> getDownloadList() {   //下载List的值return DownloadList;}public void setDownloadList(List<ReadyTask> downloadList) {DownloadList = downloadList;}public int getCurStauts() {return CurStauts;}public void setCurStauts(int curStauts) {CurStauts = curStauts;}public String getCurOPNUM() {return CurOPNUM;}public void setCurOPNUM(String curOPNUM) {CurOPNUM = curOPNUM;} }

Android 使用Application类保存应用的全局数据相关推荐

  1. boost::regex模块在 cpp 文件中搜索类定义,使用全局数据的测试程序

    boost::regex模块在 cpp 文件中搜索类定义,使用全局数据的测试程序 实现功能 C++实现代码 实现功能 boost::regex模块在 cpp 文件中搜索类定义,使用全局数据的测试程序 ...

  2. android获得application类对象,android之Application类介绍

    Application类 application是用来保存全局变量的,并且是在package创建的时候就跟着存在了. 当我们需要创建全局变量的时候,而直接在application中去实现. 只需要调用 ...

  3. Android中Application类用法

    Application类 Application和Activity,Service一样是Android框架的一个系统组件,当Android程序启动时系统会创建一个Application对象,用来存储系 ...

  4. Android中用Application类实现全局变量

    在Java中如果要使用全局变量,一般定义public static类型的变量.但是这种方法不符合Android的框架架构,Android中要使用Application context. Applica ...

  5. Android采用Application总结一下

    什么是 Application Application和Activity,Service由于是android框架的一个系统组件,当android程序启动时系统会创建一个 application对象.用 ...

  6. Android使用Application总结

    对于application的使用,一般是 在Android源码中对他的描述是; * Base class for those who need to maintain global applicati ...

  7. Android application类

    什么是application类? application是维护应用全局状态的基类,应用进程启动时android系统会创建application类并调用类的onCreate()函数,applicatio ...

  8. 在Android开发中怎样使用Application类

    转载地址:http://www.jianshu.com/p/3138f9c351e8 --- 在Android开发中怎样使用Application类 自己独立开发项目才发现以前对Application ...

  9. Android学习笔记(三)Application类简介

    每次运行APP时,Application类都保持实例化状态.与Activity不同,配置改变不会导致应用程序重启.通过继承Application类,可以完成一下3项工作: · 对Android运行时广 ...

最新文章

  1. FEMS综述: 如何从微生物网络中的“毛线球”理出头绪(3万字长文带你系统学习网络)...
  2. IE9浏览器更像一个互联网舞台
  3. 《ASCE1885的网络编程》---Winsock APIのIP地址转换函数
  4. Instagram:如何提升音乐音频质量?
  5. Web 爬虫现已合法?
  6. 【Linux】查询 OS、CPU、内存、硬盘信息
  7. web安全day36:Linux脚本编写自动修改IP地址
  8. Toggle和Slider组件
  9. wps 打开xml格式乱码_WPS文件打开之后是乱码
  10. Kernel:CC_HAVE_ASM_GOTO 、 Compiler lacks asm-goto support
  11. 题解 P1340 【兽径管理】
  12. java客服管理系统计算机毕业设计MyBatis+系统+LW文档+源码+调试部署
  13. 利用go语言创建钱包并遍历钱包(wallet)
  14. 漫画:国内都有哪些程序员大牛?
  15. 运维工程师之日常巡检
  16. 整理的最新版的K8S安装教程,看完还不会,请你吃瓜
  17. leetcode 2448
  18. 项目学习--谷粒商城
  19. 【EDA Tools】VCS Verdi 联合仿真总结
  20. Ubuntu 18.04安装NVIDA显卡驱动

热门文章

  1. 充分理解HP Flex-10和VMware的端口映射关系
  2. 元素均匀排列自动换行二维数组前端遍历
  3. B-树的一点既不形象又不恰当的比喻
  4. 用于判断用户注册时,密码强度的JS代码。
  5. Singleton(单例模式)
  6. Alpha 测试和Beta的区别
  7. 几个受益终身的英文缩写
  8. [跟我学UML] UML包图中的包引入和包合并
  9. SPCAMLEditor–灵活实用的CAML编辑工具(上)
  10. JasperReport和jFreeReport的比较