Androidでグローバル変数を設定する方法は?

Androidでは、グローバル変数を設定するのに次の方法があります。

  1. アプリケーション型のカスタマイズクラスをアプリケーションのグローバルコンテキストとして使用するよう指定するには、タグ内にandroid:name属性を追加します。
public class MyApp extends Application {
    private String globalVariable;

    public String getGlobalVariable() {
        return globalVariable;
    }

    public void setGlobalVariable(String globalVariable) {
        this.globalVariable = globalVariable;
    }
}
  1. SharedPreferencesでグローバル変数を保存する:SharedPreferencesはAndroidが提供する軽量なストレージ機構で、単純なキーバリューデータの保存に利用できます。グローバル変数をSharedPreferencesに保存しておき、必要な場面で読み出すことが可能になります。
SharedPreferences sharedPrefs = getSharedPreferences("MyPrefs", Context.MODE_PRIVATE);
SharedPreferences.Editor editor = sharedPrefs.edit();
editor.putString("globalVariable", "value");
editor.apply();

他の場所でグローバル変数を取得する際には、次のように読み取れます。

SharedPreferences sharedPrefs = getSharedPreferences("MyPrefs", Context.MODE_PRIVATE);
String globalVariable = sharedPrefs.getString("globalVariable", "");
  1. グローバル変数をシングルトンパターンを使用して設定する。シングルトンクラスを作成し、その中にグローバル変数とそのアクセサメソッド(getter/setter)を定義する。グローバル変数を使用したい場合は、シングルトンクラスのgetterメソッドを呼び出してグローバル変数を取得する。
public class GlobalVariable {
    private static GlobalVariable instance;
    private String globalVariable;

    private GlobalVariable() {}

    public static GlobalVariable getInstance() {
        if (instance == null) {
            instance = new GlobalVariable();
        }
        return instance;
    }

    public String getGlobalVariable() {
        return globalVariable;
    }

    public void setGlobalVariable(String globalVariable) {
        this.globalVariable = globalVariable;
    }
}

他の箇所でグローバル変数を取得するときは、以下のように呼び出します。

String globalVariable = GlobalVariable.getInstance().getGlobalVariable();

グローバル変数の設定には3つの方法があります。必要に応じて適切な方法を選択してください。

bannerAds