android保存全局变量
16lz
2021-01-23
需要在多个activity或者service之间共享数据
1、自定义Application
Java代码
public class DemoApplication extends Application {private HashMap<String, Object> map = new HashMap<String, Object>();public void put(String key,Object object){map.put(key, object);}public Object get(String key){return map.get(key);}}
2、修改AndroidManifest.xml文件:
Xml代码
<application android:name="DemoApplication" android:icon="@drawable/app" android:label="@string/app_name">
注意黑色粗体字标识的内容,指定程序使用我们自己定义的Application。
3、使用:
在其中一个activity中将数据保存到application中定义的map中
Java代码
DemoApplication app = (DemoApplication)getApplication();app.put("key", "this is a test!");
然后在另一个activity中去获取数据:
Java代码
DemoApplication app = (DemoApplication)getApplication();String value =(String)app.get("key");Toast.makeText(this, value, Toast.LENGTH_LONG).show();
注意,这里没有考虑并发问题,如果需要,可以在自定义的application中添加相关的同步代码来实现。
更多相关文章
- android中自定义Button,设置不同背景图片。
- Android一些常用知识和代码(不断更新)
- android mtk log宏定义
- android 系统数据库
- android ListView 刷新数据,加载时遇到的数组越界问题