Форум программистов, компьютерный форум, киберфорум
Наши страницы

Программирование Android

Войти
Регистрация
Восстановить пароль
 
Shamsik
-42 / 17 / 5
Регистрация: 23.12.2013
Сообщений: 521
Записей в блоге: 1
Завершенные тесты: 2
#1

Cache JSON Data - Программирование Android

30.04.2016, 19:24. Просмотров 241. Ответов 13
Метки нет (Все метки)

Добрый вечер.

Как кешировать текст который был получен в результате JSON парсинга, чтобы при каждом обновлении Activity не тормозила.

Есть ли библиотека которая работает с кешироваем текста или еще что нибудь, подскажите пожалуйста очень нужно.

Заранее спасибо.
0
Лучшие ответы (1)
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
30.04.2016, 19:24
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Cache JSON Data (Программирование Android):

Открыть файл из папки /data/data/com.myapp/files/appdata/ - Программирование Android
я закачиваю файлы в папку приложения и файлы попадают сюда: /data/data/com.myapp/files/appdata/ но открывать мне их нужно либой...

Просмотреть файл моего приложения /data/data/com.example.my.app/files/samplefile.txt - Программирование Android
Добрый день! Не ожидал, что все так сложно окажется. Моя программа создает txt-файл в папке данных, а именно,...

Доступ к файлам data/data на нерутованом устройстве - Программирование Android
я пытаюсь прочитать файл db который лежит в data/data/com.app и не могу выдает ошибку гуглил в инете там написано что это связано с рутом....

Доступ к файлам в data/data/appname/databases - Программирование Android
Всем привет. Вопрос в следующем Программа использует функцию отправки файла средствами mail клиента пользователя. Все бы ничего, да к...

Внутреннее хранение данных data/data - Программирование Android
Здравствуйте. Пробую писать приложения под Андроид на С++, используя NDK. Для отладки приложения выбрал adb usb вариант с присоединением к...

Ошибка - Errororg.json.JSONExceprion: Value bd.json of type java.lang.String cannot be converted to JSONObject - Программирование Android
Здравствуйте! Есть база данных bd.json, которая находится в проекте в папке assets. Вот содержимое базы данных; { "name":...

13
vxg
Модератор
3181 / 1984 / 226
Регистрация: 13.01.2012
Сообщений: 7,669
30.04.2016, 19:33 #2
Не совсем ясно что нужно. Если вы каким то образом из одного текста (JSON) получили человеческий просто храните его в все.
0
Alexvp
108 / 72 / 8
Регистрация: 03.08.2014
Сообщений: 348
30.04.2016, 19:38 #3
Возможно, это не слишком элегантный вариант, но кто вам мешает сохранить текст после парсинга в глобальной переменной объекта Application?
0
YuraAAA
1577 / 1318 / 271
Регистрация: 25.10.2009
Сообщений: 3,438
Записей в блоге: 2
30.04.2016, 19:55 #4
Shamsik, так, стоп. А почему она тормозит? Что у Вас там за данные такие?
0
Shamsik
-42 / 17 / 5
Регистрация: 23.12.2013
Сообщений: 521
Записей в блоге: 1
Завершенные тесты: 2
30.04.2016, 20:54  [ТС] #5
Я на сайте формирую JSON файл (Там хранится огромное количество информации).

А в приложении я его (распаковываю) и вывожу их, а когда я обновляю страницу она появляться через 2-3 сек, после обновления страницы.

А мне нужно было чтобы она появлялась мгновенно за миллисекунды.

Как читал можно как та кэшировать текст, не знаю как его реализовать, библиотеки тоже не нашел.

Пример приведу VK or Instagram (Огромное количество информации и фотографии они при переходе подгружаются мгновенно.).

Хотел для себя тоже сделать так.
0
SergioO
95 / 184 / 63
Регистрация: 13.12.2015
Сообщений: 1,000
30.04.2016, 21:04 #6
Shamsik, веб-страницу надо кэшировать?
если просто данные, то пишем их в переменную в куче, переменную прогружаем, и далее грузим данные из кучи, а не по сети. не совсем понятно что нужно.
0
Shamsik
-42 / 17 / 5
Регистрация: 23.12.2013
Сообщений: 521
Записей в блоге: 1
Завершенные тесты: 2
30.04.2016, 21:05  [ТС] #7
Не Web Страница это, я формирую ListView
0
SergioO
95 / 184 / 63
Регистрация: 13.12.2015
Сообщений: 1,000
30.04.2016, 21:17 #8
Цитата Сообщение от Shamsik Посмотреть сообщение
Пример приведу VK or Instagram (Огромное количество информации и фотографии они при переходе подгружаются мгновенно.).
там страницу кэшируют и получаете вы локальную копию, а потом уже, по ходу песни, AJAX подгружает чего надо... как-то так. хотя я не знаю точно, тк не пользуюсь, но это обычная практика высоко нагруженных ресурсов, тк каждый раз все перегружать для ресурса еще более накладно, чем для пользователя.

Добавлено через 8 минут
Shamsik, делайте класс
Java
1
2
3
4
5
6
7
class JSONKeeper {
private static String JSONContent;
setContent();
getContent();
}
JSONKeeper Keeper = new JSONKeeper();// напишите конструктор, чтобы прогружал необходимые вам данные;
TextView.setText(JSONContent.getContent());
если совсем упрощенно...
0
YuraAAA
1577 / 1318 / 271
Регистрация: 25.10.2009
Сообщений: 3,438
Записей в блоге: 2
30.04.2016, 21:30 #9
Лучший ответ Сообщение было отмечено автором темы, экспертом или модератором как ответ
Shamsik, не понял в чём проблема, но лан)
Вот моя либа, в ней есть MemCache. https://github.com/YuraAAA/android-develop-utils#typed-cache
1
Shamsik
-42 / 17 / 5
Регистрация: 23.12.2013
Сообщений: 521
Записей в блоге: 1
Завершенные тесты: 2
30.04.2016, 23:42  [ТС] #10
А говоришь не понял ))).

Уточнение:
Если тебе не сложно будет можешь в двух словах объяснить как он сможет работать с Текстом которых храниться тут


Java
1
2
3
4
5
6
7
8
9
10
11
12
String json = jsonParser.makeHttpRequest(AppConfig.URL_USERAVATAR, "GET", paramsitem);
            
try
    {
        JSONObject jitem = new JSONObject(json);
 
            text      =  jitem.getString("full_text");
            
    } catch (JSONException e)
    {
        e.printStackTrace();
    }
text -- Эта переменная получила полный текст с сайта.
Как его кэшировать, чтобы он не получал еще раз текст с JSON файла.


Просто как я уже говорил раннее, при каждом обновление Activity получает информацию через 2-3 секунды, если интернет отрубиться все считай ничего не сможет получит, а мне нужно было чтобы к примеру если интернет отвалится чтобы информация подгружалась из кеша.

Надеюсь поняли, вышеуказанное описание. )))
0
Alexvp
108 / 72 / 8
Регистрация: 03.08.2014
Сообщений: 348
01.05.2016, 00:05 #11
Цитата Сообщение от Shamsik Посмотреть сообщение
text -- Эта переменная получила полный текст с сайта.
Как его кэшировать, чтобы он не получал еще раз текст с JSON файла.
Проверяй наличие переменной, например, через ее длину. Если длина больше 0, то данные есть и запрос на сайт не нужен. Все просто.
0
CoolMind
419 / 402 / 65
Регистрация: 06.10.2012
Сообщений: 1,727
01.05.2016, 00:38 #12
Как я считаю, хранить кэшированную информацию надо не в переменных, а в SharedPreferences или БД. Поможет при выходе из приложения, завершении активностей и т.п.
0
Shamsik
-42 / 17 / 5
Регистрация: 23.12.2013
Сообщений: 521
Записей в блоге: 1
Завершенные тесты: 2
01.05.2016, 05:16  [ТС] #13
Я та, об этом и говорю, как правильнее хранить эти данные чтобы не было проколов, фиксировать изменение данные на сайте и применить их в приложении.... и.м.д..
0
vxg
Модератор
3181 / 1984 / 226
Регистрация: 13.01.2012
Сообщений: 7,669
01.05.2016, 07:27 #14
CoolMind, если кэш сделать статической переменной приложения все должно быть нормально. Завершение работы приложения / выключение тела - достаточный повод чтобы обновить кэш. У YuraAAA вроде есть все необходимое
0
01.05.2016, 07:27
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
01.05.2016, 07:27
Привет! Вот еще темы с ответами:

Data Base in android - Программирование Android
Создал класс базы данных, создаю в MainActivity экземпляр класса базы, но при запуске выдаетс ошибка source not found класс базы...

Data Base ошибка при записи - Программирование Android
Запись в БД: ContentValues HS = new ContentValues(); HS.put(DataBase.SCORE, Score.getText().toString());// Текст в ...

SyntaxError: JSON.parse: unexpected character at line 1 column 2 of the JSON data - jQuery
Всем привет, пытаюсь произвести запрос к обработчику c помощью AJAX, выдает ошибку при парсинге JSON че за фигня? гляньте плииз ребята ...

Парсинг JSON в JSON Linked Data с использованием Hydra Java - Java
Есть веб страница, на которой пользователь заполняет поля, жмет на кнопку и затем данные отправляются на сервер. На сервере работает...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
14
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru