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

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

    <application
android: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; // 当前运行状态
@Override
public void onCreate() {
// TODO Auto-generated method stub
instance = 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. Android中Application类的详解:

    Android中Application类的详解: 我们在平时的开发中,有时候可能会须要一些全局数据.来让应用中的全部Activity和View都能訪问到.大家在遇到这样的情况时,可能首先会想到自定义一 ...

  2. [转]Android中Application类的用法

    原文链接:http://www.cnblogs.com/renqingping/archive/2012/10/24/Application.html Application类 Application ...

  3. 【转】Android中Application类用法

    转自:http://www.cnblogs.com/renqingping/archive/2012/10/24/Application.html Application类 Application和A ...

  4. Android中Application类用法

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

  5. Android中Application类的使用

    在最近的Android项目中,有些代码需要从程序的运行周期开始一直到运行周期结束:比如说本地数据库的初始化,从服务器获取数据等:可以说Application对象的生命周期是整个程序中最长的,它的生命周 ...

  6. Android之Application类用法

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

  7. Android中Application类总结

    本文出处: 炎之铠csdn博客:http://blog.csdn.net/totond 炎之铠邮箱:yanzhikai_yjk@qq.com 本文原创,转载请注明本出处! 前言 最近的开发中经常使用到 ...

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

    最近在项目中,遇到了application这个类,开始不知道有什么用,经过学习后才知道它的用途也蛮大的,举个例子,如果想在整个应用中使用全局变量,在java中一般是使用静态变量,public类型:而在 ...

  9. android application类的用法

    android application类的用法 Application是android系统Framework提供的一个组件,它是单例模式(singleton),即每个应用只有一个实例,用来存储系统的一 ...

随机推荐

  1. python操作sqlite数据库

    root@cacti:~/box# cat convert.py #!/usr/bin/env python import sqlite3,time,rrdtool,os def boxstatus( ...

  2. 学习Linux第六天

    1.Shell编程 bash变量: 都是以字符串格式存储 x=5 等号左右不能有空格,会当作命令处理 如何调用: echo $x 此法无法进行数值运算,不存在的变量输出空 set -u 设置变量报错 ...

  3. Leetcode#49 Anagrams

    原题地址 Anagram:变位词.两个单词是变位词关系的条件是:组成单词的字符相同,只是顺序不同 第一次看这道题看了半天没明白要干嘛,丫就不能给个样例输入输出么..后来还是看网上其他人的总结知道是怎么 ...

  4. JS中函数的基础知识

    函数 一.  函数定义 函数又叫方法,在程序里面函数是用来执行某些特定功能的代码.为了减少重复使用代码,可以把特定功能的代码做成函数,需要使用时拿出来调用.alert();就是一个很常见的.简单的函数 ...

  5. PE文件结构详解

    (注:最左边是文件头的偏移量.) IMAGE_DOS_HEADER STRUCT { +0h WORD e_magic // Magic DOS signature MZ(4Dh 5Ah) DOS可执 ...

  6. 新浪微博之XSS蠕虫脚本源码讲解

    主要是因为新浪的广场页面有几个链接对输入参数过滤不严导致的反射性XSS.======================================== 微博XSS漏洞点 weibo.com/pub/ ...

  7. 安装JDK后环境变量的配置

    1.JAVA_HOME:JDK的安装路径2.CLASSPATH:java运行时加载的类路径,即JDK的lib下面的tools.jar和dt.jar3.PATH:JDK安装包下的bin目录

  8. 单件模式(Singleton Pattern)(转)

    概述 Singleton模式要求一个类有且仅有一个实例,并且提供了一个全局的访问点.这就提出了一个问题:如何绕过常规的构造器,提供一种机制来保证一个类只有一个实例?客户程序在调用某一个类时,它是不会考 ...

  9. smarty模板技术

    一.什么是smarty?smarty是一个使用php写出来的模板php模板引擎,它提供了逻辑与外在内容的分离,简单的讲,目的就是要使用php程序员同美工分离,使用的程序员改变程序的逻辑内容不会影响到美 ...

  10. python开发中常用的框架

    以下是15个最受欢迎的Python开源框架.这些框架包括事件I/O,OLAP,Web开发,高性能网络通信,测试,爬虫等. Django: Python Web应用开发框架 Django 应该是最出名的 ...