博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
Android常用开发使用全局Application
阅读量:5084 次
发布时间:2019-06-13

本文共 2417 字,大约阅读时间需要 8 分钟。

1.编写全局Application,便于管理系统启动退出时的Activity,Service等管理

public class ChatApplication extends Application {    private List
activitys = new LinkedList
(); private List
services = new LinkedList
(); @Override public void onCreate() { super.onCreate(); } public void addActivity(Activity activity) { activitys.add(activity); } public void removeActivity(Activity activity) { activitys.remove(activity); } public void addService(Service service) { services.add(service); } public void removeService(Service service) { services.remove(service); } public void closeApplication() { closeActivitys(); closeServices(); } private void closeActivitys() { ListIterator
iterator = activitys.listIterator(); while (iterator.hasNext()) { Activity activity = iterator.next(); if (activity != null) { activity.finish(); } } } private void closeServices() { ListIterator
iterator = services.listIterator(); while (iterator.hasNext()) { Service service = iterator.next(); if (service != null) { stopService(new Intent(this, service.getClass())); } } }}

2. 编写AndroidManifest.xml

3. 编写BaseActivity和BaseService

public abstract class BaseActivity extends FragmentActivity {    @Override    protected void onCreate(Bundle bundle) {        super.onCreate(bundle);        ((ChatApplication) getApplication()).addActivity(this);    }    @Override    protected void onDestroy() {        super.onDestroy();        ((ChatApplication) getApplication()).removeActivity(this);    }}
public abstract class BaseService extends Service {    @Override    public void onCreate() {        super.onCreate();                ((ChatApplication)getApplication()).addService(this);    }    @Override    public void onDestroy() {        super.onDestroy();                ((ChatApplication)getApplication()).removeService(this);    }}

4. 编写普通Activity和Service分别继承自BaseActivity和BaseService

public class LogoActivity extends BaseActivity

 

这只是一个架子,以后可以在Application中放一些全局的信息,可以方便管理和调用

转载于:https://www.cnblogs.com/cbooy/p/4782946.html

你可能感兴趣的文章
来,让我们谈一谈Normalize.css
查看>>
修复nexus4由于使用完美刷机或者刷机精灵导致的底层文件受损
查看>>
java JVM
查看>>
netty的入门
查看>>
监控mysql主从同步状态是否异常
查看>>
Leetcode 675.为高尔夫比赛砍树
查看>>
Java对象
查看>>
2017-2018-1 20155226 《信息安全系统设计基础》课程总结
查看>>
个人工作总结10
查看>>
数组的默认值
查看>>
(二)联动的饼图与柱形图
查看>>
js cookie实例
查看>>
用muduo实现memcached协议的例子
查看>>
数据结构与算法-二叉排序树
查看>>
linux学习第十四天 (Linux就该这么学)找到一本不错的Linux电子书
查看>>
R语言将List转为矩阵do.call
查看>>
AS-PATH(路径属性)路由路径欺骗术
查看>>
linux命令
查看>>
arcmap配置的mxd慢的问题
查看>>
Jenkins的介绍
查看>>