在android上使用过多SharedPreferences
有什么缺点?
答案 0 :(得分:1)
如果你尝试做任何与SharedPreferences复杂的事情,很快就变得非常繁琐;你只能存储原始类型,它是一个简单的键/值系统。因此,本身没有任何缺点,但SharedPreferences用于简单数据的轻量级存储。
答案 1 :(得分:1)
您应该只使用SharedPreferences存储与用户配置相关的少量数据。它只能存储基本数据类型,所以如果你有更复杂的信息,你应该切换到另一种机制。
SharedPreferences的一个便利功能是您可以使用它在两个应用程序之间共享数据;因此,如果您有两个必须彼此共享用户首选项的应用程序,则使用SharedPreferences可能是一个方便的选择。
此外,您不应在SharedPreferences中存储大量数据;它不是为此而做的。相反,使用SQLite数据库(1)来获得更强大的解决方案。
(1)http://developer.android.com/reference/android/database/sqlite/package-summary.html
答案 2 :(得分:1)
共享首选项用于快速访问,并加载到内存中以便与应用程序一起快速访问...因此,如果您尝试以共享首选项存储大量数据...这将导致更多的使用应用程序的关键内存(我想如果太大而无法存储在内存中,则会发生一些交换会导致性能影响)。更好地使用DB /文件系统/ Web服务器来处理大量数据....通过存储少量信息通常由应用程序访问,您实际上可以提高您的应用程序性能。
答案 3 :(得分:1)
用户可以随时清除存储在共享首选项中的数据。这是共享偏好的主要缺点。
答案 4 :(得分:0)
首先要考虑的是共享首选项是非易失性数据。因此,它们作为应用程序数据存储为键值对。因此,在您的应用中广泛使用它们可能会变得复杂。并且,为了处理吞吐量,它不会影响您的应用程序速度,因为它们存储在/作为辅助存储。