首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >在android应用程序中保存不断变化的分数

在android应用程序中保存不断变化的分数
EN

Stack Overflow用户
提问于 2019-05-26 18:24:32
回答 1查看 80关注 0票数 0

我正在用java创建一个android应用程序,游戏中的比分一直在变化,每秒变化多次。我想创建一个保存文件,以便当用户返回应用程序时能够跟踪分数,问题是我应该如何保存它?每当分数发生变化时,每秒多次写入保存文件似乎效率极低。我考虑过将它保存在onDestroy()方法中,但我听说不能保证它会被调用……

那么,在不需要每秒多次访问文件的情况下,保存分数的保证方法是什么?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2019-05-27 00:45:40

您可以使用SharedPreferences来存储属于某个应用程序的数据。

为SharedPreferences增值的

代码语言:javascript
复制
//Whenever you update the score call this function
void updateScore(int score){

    SharedPreferences mySharedPref = getSharedPreferences("give Any Name", Context.MODE_PRIVATE);
    SharedPreferences.Editor editor = mySharedPref.edit();
    editor.putInt("score", score);
    editor.apply();  //this function will commit asynchronously

}

如果您需要在任何时候获得分数,请调用此函数。

代码语言:javascript
复制
//Whenever you update the score call this function
public int getScore(){

    SharedPreferences mySharedPref = getSharedPreferences("give Any Name", Context.MODE_PRIVATE);
    return mySharedPref.getInt("score", -1); //-1 is the default value that is returned if the value is not set using putInt

}
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/56312669

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档