PlayerPref不在Android/iOS手机上保存,但在Unity Editor上保存

PlayerPref不在Android/iOS手机上保存,但在Unity Editor上保存,android,ios,unity3d,unity5,Android,Ios,Unity3d,Unity5,我在iMAC上使用Unity 5。 我遇到了一个奇怪但真正未知的问题 问题: 论统一编辑- 我已经将整数值存储在玩家prefs中,它在UnityEdit中运行良好,当我在UnityEdit中重新启动游戏时,它就被保存了,我可以检索旧的保存的玩家prefs值 在Android/iOS设备上- 我已经在设备上运行了相同的代码,然后行为就会改变。在运行游戏的过程中,玩家prefs工作正常,我可以设置并获得该值。 但是,当我重新启动游戏时,我失去了那个值,无法再次检索那个保存的值 我很想解决那个问题,但

我在iMAC上使用Unity 5。 我遇到了一个奇怪但真正未知的问题

问题:

论统一编辑- 我已经将整数值存储在玩家prefs中,它在UnityEdit中运行良好,当我在UnityEdit中重新启动游戏时,它就被保存了,我可以检索旧的保存的玩家prefs值

在Android/iOS设备上- 我已经在设备上运行了相同的代码,然后行为就会改变。在运行游戏的过程中,玩家prefs工作正常,我可以设置并获得该值。 但是,当我重新启动游戏时,我失去了那个值,无法再次检索那个保存的值

我很想解决那个问题,但我不能成功

有人知道玩家prefs这种未知行为的解决方案吗


先谢谢你

放入数据后是否使用
PlayerPrefs.Save()


如果没有读到它

您可以通过使用您自己的文件/序列化解决方案来绕过它。例如protobuf。你可以阅读一本优秀的指南。

我认为可能有两个问题。1.当调用Save函数时,它会将文件写入磁盘,当应用程序启动时,它会从磁盘读取,所以问题可能来自磁盘或文件。2.问题是合乎逻辑的,例如`您在某处调用了DeleteAll或DeleteKey函数#haksist>>非常感谢您的重播。现在我试图彻底地破坏我的代码。另一个问题是,根据您的答案(第二个问题)->如果我删除所有或删除键函数,那么它不应该在UnityEdit:)中工作。但它在UnityEditor中工作良好,可以保存和检索所有键和值。仅在Android/iOS设备中,不保存一些播放器参考键和值。#haksist>>我也使用了一些其他播放器参考键,但这些都可以正常工作,只有一些键和值不保存在真实设备上,我也在模拟器中进行了测试。我在模拟器中也遇到了同样的问题。我的代码实际上没有Save()。我在每个Set()方法之后添加了它,然后。。。无:(可能是我们可以发现问题,如果你分享一些代码。我也有同样的问题。从Unity资产商店购买了一个游戏模板,使用Unity 5.2和OS X Captain。