java – 如何在android中创建一个全局变量?

前端之家收集整理的这篇文章主要介绍了java – 如何在android中创建一个全局变量?前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
参见英文答案 > Android global variable12个
在我的Android应用程序中,我需要一个放置变量成员ID的地方.
问题是,它正在从在线API获得,我需要找到一种方法来存储/检索它

我已经尝试把它放在一个自定义的类中,但是问题是,如果我杀死了这个活动,它会丢失,我也知道有一种扩展应用程序的方法.

所以我想知道什么是存储全局变量的最佳方式?

我必须暗示:

>将变量保存在onSaveState上
>将其保存在sharepref上
>手动保存
>手动检索

谢谢

更新:
感谢您的回复.如果我只有3个变量(简单数据,例如一个布尔值,一个短语),并且在应用程序重新启动后需要它,是否应该使用共享pref来存储它?它的缺点是什么?例如会对表演有害吗?谢谢

解决方法

您可以在android中通过在扩展Application类的类中声明它们来创建全局变量.

这样的东西

class MyAppApplication extends Application {

    private String mGlobalVarValue;

    public String getGlobalVarValue() {
        return mGlobalVarValue;
    }

    public void setGlobalVarValue(String str) {
        mGlobalVarValue = str;
    }
}

MainActivity.java

class MainActivity extends Activity {
    @Override
    public void onCreate(Bundle b){
        ...
        MyAppApplication mApp = ((MyAppApplication)getApplicationContext());
        String globalVarValue = mApp.getGlobalVarValue();
        ...
    }
}

更新

这将保持该值,直到您的应用程序未被销毁为止.如果您希望在应用程序实例销毁后保持您的值保存
那么您可以使用SharedPreferences最佳方式来执行此操作.

从这里了解SharedPrefernces:http://developer.android.com/reference/android/content/SharedPreferences.html

猜你在找的Java相关文章