Я сохраняю String в общих настройках, но мне не удалось найти максимальную длину строки, которую я могу сохранить. Знаете ли вы эту ценность?Общие предпочтения - максимальная длина одного значения
Благодаря
Точек
Я сохраняю String в общих настройках, но мне не удалось найти максимальную длину строки, которую я могу сохранить. Знаете ли вы эту ценность?Общие предпочтения - максимальная длина одного значения
Благодаря
Точек
По Romain Guy от вопроса Asked Here,
Независимо максимальная длина строки Java есть. Итак, что-то вроде Целочисленные символы.MAX_VALUE.
Предположим, что SharedPreferene - это XML-файл, хранящийся в одном теге, если вы храните только одну пару/объект. Таким образом, нет никаких ограничений для записи строки в том, что если вы думаете, как вы пишете в файле .. (Theoratically)
Но На самом деле случается, что, в то время как вы назначаете значение для SharedPreference с помощью put/get
функция в это время вы Чтение/Написание значения в String Object ..so Предел будет хранить значение за один раз, равное Ограничение по размеру String Объект Java.
Поэтому пока сочинительство код: Предел SharedPreference Струнный Size = Строка Java Object Size Limit (практически)
'Integer.MAX_VALUE' - 2147483647. – Fred
Общая настройка хранится в /data/data/[package_name]/shared_prefs/[app name].xml
, я думаю, что есть нет предела согласно андроида архитектуры.
Когда я пытаюсь сохранить длину макс строку в SharedPreferences в устройстве, это бросить память Исключение, когда данные SharedPreferences превышают 1.42 МБ.
Так что если у вас есть размер данных более 1,42 МБ, чтобы сохранить его лучше, чтобы сохранить базу данных SQLite.
Согласно developer.android. «Если у вас относительно небольшая коллекция значений ключа, которые вы хотите сохранить, вы должны использовать API SharedPreferences».
Если он действительно огромный, например, более 10 килобайт, вы можете сохранить его каким-либо другим способом, возможно, файл на диске. – Fred