С Новым годом! Форум программистов, компьютерный форум, киберфорум
Программирование Android
Войти
Регистрация
Восстановить пароль
Карта форума Темы раздела Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.65/34: Рейтинг темы: голосов - 34, средняя оценка - 4.65
0 / 0 / 0
Регистрация: 04.08.2013
Сообщений: 13
1

Справочник на android

01.11.2014, 17:22. Показов 6374. Ответов 10
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
Стоит задача написать простой телефонный справочник, примерно 4к абонентов, но увы, мои познания в программирование под android скудны. Я понимаю, задача тривиальная, но все же.
Как я понял лучше использовать БД, а не массив? И как реализовать динамическую подгрузку контента и поиск? Спасибо!
0
cpp_developer
Эксперт
20123 / 5690 / 1417
Регистрация: 09.04.2010
Сообщений: 22,546
Блог
01.11.2014, 17:22
Ответы с готовыми решениями:

Передача данных: Справочник <-> Документ <-> Справочник
Доброго все времени суток! я в 1С новичек, помогите пожалуйста Я понимаю, что на многие вопросы...

Работа с файлами android которые находятся не в папке проекта Android Studio
Всех приветствую, начал разработку приложения под Android и не могу разобраться как работать с...

Откуда берутся атрибуты android:layout_width и android:layout_height в элементе LinearLayout?
Недавно начал изучать Android API, а сегодня более менее разобрал основы синтакиса XML. Затем стал...

Не предлагается установка Android SDK при установке Android Studio
на сайте https://developer.android.com/studio/... скачал exeшник для установки Android Studio....

10
1605 / 1337 / 291
Регистрация: 25.10.2009
Сообщений: 3,487
Записей в блоге: 2
01.11.2014, 18:50 2
Цитата Сообщение от qwer1i Посмотреть сообщение
мои познания в программирование под android скудны
насколько скудны?
Цитата Сообщение от qwer1i Посмотреть сообщение
Как я понял лучше использовать БД, а не массив?
Только БД.
Цитата Сообщение от qwer1i Посмотреть сообщение
И как реализовать динамическую подгрузку контента
Можно запросом с параметрами limit и offset.
1
0 / 0 / 0
Регистрация: 04.08.2013
Сообщений: 13
01.11.2014, 20:50  [ТС] 3
Максимально скудны
Но, в принципе, я понял, в каком направлении рыть, спасибо.
А вы случайно не знаете готовых или полу готовых решений?
0
325 / 123 / 10
Регистрация: 01.11.2012
Сообщений: 586
01.11.2014, 23:44 4
Все решения кусковые, сразу готовых не найдете, т.к. определенных правил, как я уже убедился, не существует. Собирайте по мере надобности по кусочкам. Я начинал банально вывести данные из таблицы в листвью. Соответственно надо уметь хоть что то писать и понимать в SQL и учится делать кастомный адаптер. Все эти вещи есть тут на форуме.
1
14 / 14 / 3
Регистрация: 13.02.2012
Сообщений: 233
Записей в блоге: 1
07.03.2015, 10:25 5
qwer1i, нашел решение своей задачи? Тоже встала похожая задача.
0
420 / 357 / 47
Регистрация: 22.05.2013
Сообщений: 2,518
07.03.2015, 14:14 6
ИМХО 4к это слишком много записей! Будет тормозить! Норма (по моим наблюдениям) несколько (2-4) сотен!!!
Для большего нужна система оптимизации. Когда-то была описана на хабре - поищите там.

Я "для себя" пишу звонилку. У меня в книжке ~500~600 номеров (>10 лет копил) и если хочу вывести что-то больше чем 1-2 поля в одну строку (картинки, расчетные поля, у меня их уже больше 8ми), приходится оптимизировать...
0
325 / 123 / 10
Регистрация: 01.11.2012
Сообщений: 586
07.03.2015, 14:16 7
Tester64, тормозит из-за чего? Из-за получения данных из БД или при выводе в список?
0
420 / 357 / 47
Регистрация: 22.05.2013
Сообщений: 2,518
07.03.2015, 14:29 8
Получение почти мгновенное, хотя если столбцов в запросе много, может задуматься почти на секунду.
Проблема при ПОЗИЦИОНИРОВАНИИ в запросе.
Ведь как рисуется запись №300:
-встать на позицию в запросе
-получить из запроса нужные поля
-отрисовать полученное в строку

так вот встать на позицию занимает СЛИШКОМ долго для быстрого листания!

Один из хабравчанинов это решил общим запросом по индексу и скоростными запросами по каждому полю.
1
24 / 17 / 7
Регистрация: 05.12.2013
Сообщений: 70
07.03.2015, 22:48 9
Что-то запутоно, у меня есть опыт написания клиента для сервиса анонимных вопросов, ну так вот, выкачивал я и несколько тысячь вопросов - не тормозило (хранил в бд). Видимо у вас архитектура такова или многопоточностью не корректно воспользывались.
0
420 / 357 / 47
Регистрация: 22.05.2013
Сообщений: 2,518
08.03.2015, 11:26 10
Цитата Сообщение от balolam Посмотреть сообщение
выкачивал я и несколько тысячь вопросов
Вы их ОДНОВРЕМЕННО пытались вывести на экран? все несколько тысяч? Хранить в базе можно и миллионы. Но если хотите выводить на экран по быстрому, то возникают проблемы. Когда вы скролите быстрым методом (ползунком, а не слайд пальцем), то за один слайд на экран надо вывести за одну секунду десяток-сотню строк. Даже если каждую выводит 0.1 секунды, то тормоза ОЧЕНЬ наглядные.

Скажем так... у меня была база на 500-900 позиций. Надо было выводить 6-12 полей в одну строку (включая 3-4 картинки). Листвьюв справлялся. Но база выросла до 2500 и... тормоза! Вынужден переделывать адаптер.

Сейчас сделал свой спид-адаптер на основе хабра и своих идей. Его использую как предок для спид-адаптер-sqlite. В том числе и для адаптера показа списка контактов и истории звонков. Планирую еще ускорить на порядок через многопоточность. Уже добивался, но вынужден был отключить - не победил утечку памяти - не было инструментов отлова (тупо перегружалась мобилка через 10 минут тестов).
0
0 / 0 / 0
Регистрация: 16.07.2013
Сообщений: 51
08.03.2015, 12:32 11
Есть ли кто, кто разбирается в AIDE(android integrated development environment)?
0
08.03.2015, 12:32
raxper
Эксперт
30234 / 6612 / 1498
Регистрация: 28.12.2010
Сообщений: 21,154
Блог
08.03.2015, 12:32
Помогаю со студенческими работами здесь

Android Studio не находит функцию TextView в пакете Android.Widget
Я создал новый проект в Android Studio. Android Studio не находит функцию TextView в пакете...

Ошибка: Caused by Android java.lang.ClassCastException: android.app.Application cannot be cast
Здравствуйте. Очень нужен ваш совет. При запуске приложения появляется ошибка: Caused by:...

Android studio, как запускать программу сразу на android смартфоне подключенному к usb?
android studio, как запускать программу сразу на android смартфоне подключенному к usb?

Как приложение Android написать на С++ в Android NDK, чтоб получить *.apk? Нужен мануал
Уже не в первый раз задаю вопрос. Молчание. В лучшем случае - &quot;RTFM&quot; и точка. Так вот,...


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

Или воспользуйтесь поиском по форуму:
11
Ответ Создать тему
Новые блоги и статьи
Книги и учебные ресурсы по C#
InfoMaster 08.01.2025
Базовые учебники и руководства Одной из лучших книг для начинающих является "C# 10 и . NET 6 для начинающих" Эндрю Троелсена и Филиппа Джепикса . Книга последовательно раскрывает основные концепции. . .
Что такое NullReferenceEx­­­ception и как исправить?
InfoMaster 08.01.2025
NullReferenceException - одно из самых распространенных исключений, с которым сталкиваются разработчики на C#. Это исключение возникает при попытке обратиться к членам объекта (методам, свойствам или. . .
Что такое Null Pointer Exception (NPE) и как это исправить?
InfoMaster 08.01.2025
Null Pointer Exception (NPE) - это одно из самых распространенных исключений в Java, которое возникает при попытке использовать ссылку на объект, значение которой равно null. Это исключение относится. . .
Русский язык в консоли C++
InfoMaster 08.01.2025
При разработке программ на C++ одной из частых проблем, с которой сталкиваются русскоязычные программисты, является корректное отображение кириллицы в консольных приложениях. Эта проблема особенно. . .
Telegram бот на C#
InfoMaster 08.01.2025
Разработка ботов для Telegram стала неотъемлемой частью современной экосистемы мессенджеров. C# предоставляет мощный и удобный инструментарий для создания разнообразных ботов, от простых. . .
Использование GraphQL в Go (Golang)
InfoMaster 08.01.2025
Go (Golang) является одним из наиболее популярных языков программирования, используемых для создания высокопроизводительных серверных приложений. Его архитектурные особенности и встроенные. . .
Что лучше использовать при создании класса в Java: сеттеры или конструктор?
Alexander-7 08.01.2025
Вопрос подробнее: На вопрос: «Когда одновременно создаются конструктор и сеттеры в классе – это нормально?» куратор уточнил: «Ваш класс может вообще не иметь сеттеров, а только конструктор и геттеры. . .
Как работать с GraphQL на TypeScript
InfoMaster 08.01.2025
Введение в GraphQL и TypeScript В современной разработке веб-приложений GraphQL стал мощным инструментом для создания гибких и эффективных API. В сочетании с TypeScript, эта технология. . .
Счётчик на базе сумматоров + регистров и генератора сигналов согласования.
Hrethgir 07.01.2025
Создан с целью проверки скорости асинхронной логики: ранее описанного сумматора и предополагаемых fast регистров. Регистры созданы на базе ранее описанного, предполагаемого fast триггера. То-есть. . .
Как перейти с Options API на Composition API в Vue.js
BasicMan 06.01.2025
Почему переход на Composition API актуален В мире современной веб-разработки фреймворк Vue. js продолжает эволюционировать, предлагая разработчикам все более совершенные инструменты для создания. . .
Архитектура современных процессоров
inter-admin 06.01.2025
Процессор (центральный процессор, ЦП) является основным вычислительным устройством компьютера, которое выполняет обработку данных и управляет работой всех остальных компонентов системы. Архитектура. . .
История создания реляционной модели баз данных, правила Кодда
Programming 06.01.2025
Предпосылки создания реляционной модели В конце 1960-х годов компьютерная индустрия столкнулась с серьезными проблемами в области управления данными. Существовавшие на тот момент модели данных -. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2025, CyberForum.ru