加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 编程开发 > Java > 正文

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

发布时间:2020-12-14 05:31:06 所属栏目:Java 来源:网络整理
导读:参见英文答案 Android global variable12个 在我的Android应用程序中,我需要一个放置变量成员ID的地方. 问题是,它正在从在线API获得,我需要找到一种方法来存储/检索它 我已经尝试把它放在一个自定义的类中,但是问题是,如果我杀死了这个活动,它会丢失,我也知
参见英文答案 > 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

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读