java - 如何只保存新的高分并放入排行榜

标签 java android leaderboard

我们通常使用sharedpreferences来保存当前数据,比如

            SharedPreferences pref = getSharedPreferences("SavedGame", MODE_PRIVATE); 
            SharedPreferences.Editor editor = pref.edit();      
            editor.putInt("Score", gamescore);       
            editor.putInt("Level", gamelevel);  
            editor.commit();

然后使用它来获取保存在sharedpreferences中的数据

SharedPreferences pref = getSharedPreferences("SavedGame", MODE_PRIVATE);
gamelifes = pref.getInt("Score", 0);
gamelevel = pref.getInt("Level", 0);

但正如我们所知,每次做出新分数时,保存都会覆盖。

如何只保存一个新的高分?即,如果用户获得的分数低于最新的高分,则不会被保存,只有当它是新的高分时。另外,我怎样才能将这个分数放在 Google 排行榜中?

最佳答案

我不完全理解代码,但我认为您希望使用 if 语句

highscore = pref.getInt('Highscore", 0);
if (gamescore > highscore){
    pref.edit("Highscore, gamescore);
}

类似的东西

关于java - 如何只保存新的高分并放入排行榜,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32413650/

相关文章:

java - 向 Eureka 休息服务端点发送多部分文件请求时出现异常

objective-c - GKLeaderboardViewController 初始排行榜

android - 谷歌排行榜提交分数失败

android - Kotlin for Android - Kotlin 编程

sql - 如何实现Foursquare的 "Mayor"功能——找到最近N天得分最高的用户?

java - 键盘挤压 ScrollView

java - 在实例参数上调用实例方法引用

java - 我们可以使用java socketchannel与基于C的TCP服务器进行通信吗

android - 我想使用 edittext 从数据库中搜索名称

android - 无法安装 Android 应用程序 - INSTALL_FAILED_MISSING_SHARED_LIBRARY