我发现某些值已被存储到Set
重新启动应用程序后丢失了。为什么?这是一个Android API错误?有人建议将字符串存储在数据库中。我还没有测试过,但我认为这个建议是解决问题的方法。那么getStringSet
和putStringSet
?使用getStringSet和putStringSet丢失一些值
3
A
回答
5
从我的理解,这是一个错误。问题在于,当你尝试存储一个集合时,Android会将你正在尝试保存的已修改集合与存储在SharedPreferences中的当前集合进行比较。当它们是同一个对象(具有相同的参考)时,新的被忽略。
解决方法是在存储之前创建集合的新副本。
Here是细节和问题提交https://code.google.com/p/android/issues/detail?id=27801。
0
我有使用SharedPreferences相同的问题。 Android API似乎存在一个错误。我做了就可以了小哨here
对我来说,最简单的方法是将其删除,提交它,然后把它和再犯它
3
SharedPreferences.Editor编辑= preferences.edit();
editor.remove(key);
editor.commit();
editor.putStringSet(key,value);
editor.commit();
+0
尝试解释这个答案多一点。代码很好,但解释对所有未来的观众更好。 – SuperPrograman 2013-10-16 02:27:41
相关问题
- 1. 下拉菜单丢失了一些值
- 2. Celery/Redis一些(很多)消息丢失
- 3. DataGridView中丢失的一些对象
- 4. IIS SMTP一些邮件丢失了
- 5. Youtube搜索API - 一些文件丢失
- 6. DataOutputStream,是否会丢失一些位
- 7. preg_match在使用cURL获取数据时丢失了一些ID
- 8. jsch ChannelExec使用nohup运行.sh脚本“丢失”一些命令
- 9. 使用Python嗅探模块丢失了一些数据包
- 10. Ajax.ActionLink值丢失
- 11. 导入丢失一些浮点类型值的csv数据表
- 12. SharedPreferences getStringSet方法不可用
- 13. WCF在使用静态时丢失值
- 14. serializer.data丢失某些数据
- 15. libGDX - GDX-后端-jglfw丢失和其他一些
- 16. 某些顺序SignalR调用丢失
- 17. 捆绑丢失值
- 18. PHP mysql_real_escape_string丢失值
- 19. 指针值丢失
- 20. 使用servlet和Jetty时丢失图像
- 21. 用.net和jQuery丢失
- 22. ASP.NET/UserControl,ViewState和丢失属性值
- 23. 的Weblogic应用抱怨一些类丢失,如何调试?
- 24. php在使用ajax后引用后丢失了一些字符串的路径
- 25. 使用IServerEvents.NotifyChannel丢失事件
- 26. 使用GMP精确丢失
- 27. 权限丢失使用SetSystemTime
- 28. 使用Mailkit丢失附件
- 29. MailMessage.Body使用Encoding丢失CrLf.UTF8
- 30. 使用Uploadify时,为什么某些POST数据会丢失?
谢谢。但是我用一个包含“NOT NULL UNIQUE TEXT”字符串的表格来表示一个数据库。 – 2013-03-28 16:30:32