首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >谷歌游戏:云保存游戏被删除,使用另一种口味

谷歌游戏:云保存游戏被删除,使用另一种口味
EN

Stack Overflow用户
提问于 2017-03-06 21:15:43
回答 1查看 57关注 0票数 0

我在使用Google Play Savegames和Android flavors时遇到了奇怪的错误。为了测试我的游戏,我有两个不同的flavorsdev用于测试,release用于发布。

我用同一个谷歌账号同时使用了两种口味的Google Play savegames。似乎每当我将其中一个版本的savegame推到云中时,另一个版本就再也找不到它的savegame了。

如果为两个flavors启用了savegame,会不会发生某种冲突,从而导致我的savegame丢失?如果这两个游戏有不同的包名称(com.company.mygame和com.company.mygame.dev),是否应该将其保存为云中的两个不同的游戏,或者Google Play Games如何处理此问题?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2017-03-13 06:37:10

我自己解决了这个问题,这是Proguard的问题。Proguard重命名了我的枚举的名称,这些枚举是我的savegame数据的一部分,即使savegamedata本身被排除在混淆之外。排除适用于savegame数据中的所有变量名称,但不适用于枚举名称。

添加到Proguard规则中的以下行修复了该问题:

代码语言:javascript
复制
# Application classes that will be serialized/deserialized over JSON, keepclassmembers
-keepclassmembers class com.mycompany.mygame.Utility.SaveGameData** { *; }

# all my enums that were renamed
-keep public enum com.mycompany.mygame.Entities.Player$** {
    **[] $VALUES;
    public *;
}

-keep public enum com.mycompany.mygame.Entities.Enemy$** {
    **[] $VALUES;
    public *;
}

-keep public enum com.mycompany.mygame.Entities.Quest$** {
    **[] $VALUES;
    public *;
}

-keep public enum com.mycompany.mygame.Entities.Room$** {
    **[] $VALUES;
    public *;
}
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/42626621

复制
相关文章

相似问题

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