Android sdk开发(一)Application设计

来源:互联网 发布:linux网络编程培训 编辑:程序博客网 时间:2024/05/17 23:26

Appllication的功能设计

每一个App都应该有一个扩展的Application。这个类中主要写一些整个app广泛用到的方法或app相关配置操作

application的生命周期是从app启动到退出。进程结束。所以在application中变量都定义为static,  也可以定义为非static。只是调用的时候稍微麻烦点

 

public classPhoebeApp extends android.app.Application

 

       private static Context context;

 

       private static Handler handler;

 

App的上下文引用,主要用于调用系统api

比如说 context.getSystemService(String name) 我们在app的方法中调用的时候可以

PhoebeApp.getContext().getSystemService(Context.NOTIFICATION_SREVICE)。 不需要每次使用的时候都传入参数Context,在类设计的时候可以更加自由。

 

另外App中会频繁用到handler与线程的交互。有时候我们需要用Handler#postDelayed(Runnable r , intdelayMills) 这个时候我们无需重新new handler(); 只需要调用全局的PhoebeApp#getHander() 即可

 

更高级的用法先不讲。后续再

 

 

至此一个基本的Application扩展类已经定义完成


package phoebe.frame;import android.app.Application;import android.content.Context;import android.os.Handler;/** * 这个类中主要做一些全局的配置, 或者整个app广泛用到的方法逻辑<br> *  * 生命周期从 *  * @author coffee<br> *         2015-12-15下午3:28:30 */public class PhoebeApp extends Application {/** * app的上下文的引用,主要用于调用系统api的时候传参 */private static Context context;/** * 全局Handler 一般一个app只需要定义一个Handler就搞定了 */private static Handler handler;@Overridepublic void onCreate() {super.onCreate();}public static Context getContext() {return context;}public static Handler getHandler() {return handler;}}


0 0
原创粉丝点击