AndroidはグローバルでContextを取得するテクニックを応用
1830 ワード
—————————転載歓迎!———————
AndroidアプリではContextが使われることが多い。
この場合のグローバルContextの取得方法について説明します.
アプリケーションクラスのカスタマイズ
Androidには、アプリケーションが起動すると自動的に初期化されるアプリケーションクラスが用意されています.
独自のアプリケーションクラスをカスタマイズして、元のアプリケーションクラスから継承し、グローバルContextなどのプログラムのグローバルステータスを管理できます.
public class MyApplication extends Application {
private static Context mContext;
@Override
public void onCreate(){
mContext = getApplicationContext();
}
public static Context getContext() {
return mContext;
}
}
そしてAndroidManifestを修正します.xmlファイルは、デフォルトのアプリケーションクラスではなく、システムプログラムの起動時にMyApplicationクラスを初期化する必要があることを通知します.
......
注意:MyApplicationのnameを指定するときは必ず完全なパッケージ名:com.exmaple.hello.MyApplication、そうでないとクラスが見つかりません.