Главная » Статьи для тега "данных"

Дополнительные концепции, связанные с базой данных в Android приложении

Добавлено Дата: 20 August, 2013 категория: Разработка для Android

 

Итак, вы уже знаете достаточно много простых команд SQL, чтобы приступать к работе с базами данных в Android. Но по мере того, как создаваемые вами приложения будут становиться все сложнее, вам, вероятно, придется воспользоваться следующими конструктами SQL, которые мы не будем детально рассматривать в нашей книге.

Читать »

Метод delete в Android приложении

Добавлено Дата: 20 August, 2013 категория: Разработка для Android

Метод del ete похож на update, но он удаляет строки, на которые ссылается заданный URI. Подобно update, метод delete возвращает количество строк, затронутых операцией удаления:

Читать »

Поставщики содержимого и Интернет – ANDROID ПРИЛОЖЕНИЯ

Добавлено Дата: 18 August, 2013 категория: Разработка для Android

 

Вместе с компонентом Activity приложения Android поставщики содержимого предоставляют детали, необходимые для построения архитектуры MVC («Модель-вид-контроллер»). Кроме поддержки REST-подобных операций, поставщики содержимого поддерживают паттерн «Наблюдатель» (observer), который, в свою очередь, поддерживает MVC. Класс ContentResolver предоставляет метод notifyChange, транслирующий информацию об изменениях, происходящих в базе данных, тем объектам Cursor, которые зарегистрировали наблюдатели содержимого (content observers) при помощи метода registerContentObserver.

Читать »

Ограничения, определяемые для базы данных в Android приложении

Добавлено Дата: 18 August, 2013 категория: Разработка для Android

 

Ограничения, определяемые для базы данных (database constraints) – это особые атрибуты, присваиваемые для ее таблиц. Некоторые ограничения являются информационно-ориентированными, например требуют, чтобы все значения в столбце были уникальными. Таков, например, будет столбец с номерами страховых полисов. Другие ограничения характеризуются более функциональными свойствами. Основу межтабличных связей составляют реляционные ограничения PRIMARY KEY и FOREIGN KEY.

Читать »

Базовая структура класса SimpleVideoDbHelper в Android приложении

Добавлено Дата: 17 August, 2013 категория: Разработка для Android

В нашем примере в файле SimpleFinchVideoContentProvider. Java заключена вся логика SQL, необходимая для работы с базой данных simple_video в Android. Приложения, которым требуется доступ к данным, сохраненным в долговременной памяти этой базы данных, взаимодействуют с поставщиком содержимого и курсором, предоставляемым этим поставщиком.

Читать »

SQLite в Android приложении

Добавлено Дата: 16 August, 2013 категория: Разработка для Android

 

В качестве движка базы данных Android использует SQLite. Это самодостаточная транзакционная база данных, для работы которой не требуется отдельного серверного процесса. SQLite используется и во многих средах и приложениях, а разработкой SQLite активно занимается обширное свободное сообщество. В отличие от баз данных, ориентированных на работу с ПК (они еще называются корпоративными базами данных) и предоставляющих массу функций, которые обеспечивают отказоустойчивость и конкурентный доступ к данным, в SQLite последовательно упраздняются все функции, кроме тех, что абсолютно необходимы. Это делается для того, чтобы база данных занимала как можно меньше места в памяти. Например, во многих системах баз данных используется статическая типизация, но в SQLite информация о типе базы данных не сохраняется. Вместо этого задача хранения информации о типах делегируется высокоуровневым языкам, например Java, которые отображают структуры базы данных на высокоуровневые типы.

Читать »

ПОШАГОВАЯ РАЗРАБОТКА ПОИСКОВОГО ПРИЛОЖЕНИЯ в Android приложении

Добавлено Дата: 14 August, 2013 категория: Разработка для Android

 

На рис. 13.3 схематически представлены этапы процесса, в ходе которого наш поставщик содержимого обслуживает поисковые запросы, поступающие от вида и контроллера. При этом используются сетевые запросы с передачей состояния представления. Поставщик содержимого может кэшировать получаемые из сети результаты в таблице SQLite, и лишь потом уведомлять наблюдателей, слушающих URI, которые связаны с нужными данными. Запросы могут проходить между компонентами в асинхронном режиме. Вид и контроллер не должны напрямую или синхронно инициировать собственные сетевые запросы.

Читать »

КЛАССЫ БАЗЫ ДАННЫХ В ANDROID

Добавлено Дата: 13 August, 2013 категория: Разработка для Android

 

В этом разделе делается введение в классы Java, обеспечивающие доступ к рассмотренным выше функциям SQLite. При их применении используется только что описанная модель, ориентированная на работу с данными.

SQLiteDatabase – это интерфейс Android на языке Java, предназначенный для взаимодействия с реляционной базой данных. Он поддерживает достаточно насыщенную реализацию SQL, предоставляющую вам практически все элементы, которые могут понадобиться в мобильном приложении, в том числе возможность работы с курсором.

Читать »

Пример работы с базой данных с использованием sqlite3 в Android приложении

Добавлено Дата: 12 August, 2013 категория: Разработка для Android

 

Теперь, когда вы знаете основы SQL и понимаете, как этот язык соотносится с SQLite, рассмотрим простую базу данных для хранения метаданных видео. Мы будем применять команду sqlіte3 для работы с командной строкой, а также отладочную оболочку Android, которую можно запустить командой adb. Пользуясь командной строкой, можно просматривать изменения базы данных по мере их возникновения. Кроме того, мы покажем несколько простых примеров того, как работать с этим полезным инструментом отладки базы данных. Более подробная информация о sqlite3 приводится по адресу http://www.sqlite.org/sqlite.html. Обратите внимание на то, что в первый раз этот пример лучше запустить на эмуляторе Android, поскольку для запуска его на реальном устройстве вам потребуются административные (привилегированные) права доступа. Для начала инициализируем базу данных:

Читать »

ДРУГИЕ КОМПОНЕНТЫ  – ANDROID ПРИЛОЖЕНИЯ

Добавлено Дата: 11 August, 2013 категория: Разработка для Android

 

В создании приложений для Android участвуют еще три других компонента: сервисы (services), поставщики содержимого (content providers) и широковещательные приемники (broadcast receivers). Класс Service поддерживает фоновые функции. Класс ContentProvider обеспечивает множественным приложениям доступ к хранилищу данных, a Broadcast Recei ver позволяет нескольким участникам слушать намерения, которые транслируются приложениями в системе.

Читать »

СЕТЕВОЙ ВАРИАНТ «МОДЕЛЬ-ВИД-КОНТРОЛЛЕР» в Android приложении

Добавлено Дата: 8 August, 2013 категория: Разработка для Android

 

Нам кажется, что удобно представить второй из описанных выше принципов как сетевой вариант паттерна «Модель-вид-контроллер», где сам поставщик содержимого получает данные из сети, а затем закачивает их в обычный паттерн MVC, действующий в Android. Мы рассмотрим поставщик содержимого как модель сетевого состояния – поставщик может выполнять запросы на получение данных с состоянием, имеющимся в локальной системе, либо получать данные из сети. При применении такого подхода код контроллера и вида не должен непосредственно создавать сетевые запросы для доступа к данным приложения и для управления ими. Вместо этого вид и контроллер вашего приложения должны использовать API ContentResolver для того, чтобы запрашивать данные через поставщик содержимого. И только поставщик содержимого должен в асинхронном режиме загружать сетевые ресурсы и сохранять результаты в локальном кэше данных. Кроме того, поставщик содержимого всегда должен быстро реагировать на запрос, с самого начала избегая этапа сетевой активации, которая может потребоваться для выполнения запроса с использованием какой-либо информации, уже находящейся в локальной базе данных. При выполнении запроса по такому принципу гарантируется, что поток пользовательского интерфейса будет заблокирован не дольше, чем это необходимо, и что пользовательский интерфейс должен отобразить те или иные данные как можно быстрее. Таким образом, увеличивается скорость реагирования приложения и пользователю становится гораздо приятнее работать с таким интерфейсом. Рассмотрим, в какой последовательности поставщик содержимого запрашивает данные.

Читать »

Транзакции базы данных в Android приложении

Добавлено Дата: 6 August, 2013 категория: Разработка для Android

Транзакции базы данных позволяют делать последовательности предложений SQL атомарными: либо все предложения выполняются успешно, либо ни одно из них не оказывает воздействия на базу данных. Это свойство может быть важным, например если в вашем приложении возникнет нештатная ситуация (допустим, крах системы). Транзакция гарантирует, что если устройство отключается прямо в ходе выполнения определенной последовательности операций, то ни одна из уже выполненных операций не отразится на базе данных. В контексте баз данных принято говорить, что транзакции SQLite обеспечивают пресловутые свойства ACID: http://ru.wikipedia.org/wiki/ACID.

Читать »

insert и ResponseHandlers в Android приложении

Добавлено Дата: 6 August, 2013 категория: Разработка для Android

 

Теперь рассмотрим этап 5 более подробно. Наш поставщик Finch-видео реализует іnsert во многом так же, как и простой поставщик видео. Как мы уже видели в нашем приложении, вставка видео происходит как побочный эффект метода query. Стоит еще раз подчеркнуть, что наш метод іnsert делится на две части. Мы хотим, чтобы клиенты поставщика содержимого вызывали первую форму, а обработчики ответов (объекты ResponseHandlеr) – вторую. Обе эти формы показаны в следующем коде. Первая форма делегирует задачу второй. Мы разделяем insert потому, что обработчик ответов входит в состав поставщика содержимого и не должен соединяться сам с собой через преобразователь содержимого:

Читать »

Жизненный цикл активности и работа пользователя с системой в Android приложении

Добавлено Дата: 5 August, 2013 категория: Разработка для Android

 

Если приложение хорошо приспособлено для мобильной среды вообще, то в цикле управления его жизненным циклом потребуется меньше кода:

если информация, используемая активностью, всегда является актуальной и находится в базе данных, то вам не придется специально сохранять эту информацию в коде в методе жизненного цикла приложения;

Читать »

РАЗРАБОТКА БАЗЫ ДАННЫХ ДЛЯ ПРИЛОЖЕНИЙ ANDROID

Добавлено Дата: 4 August, 2013 категория: Разработка для Android

 

В данном разделе мы рассмотрим часть кода и занимается долговременным хранением метаданных, аннотирующих видеофайлы. К этим метаданным относятся заголовок видео, его описание и URL видеофайла. Данный код находится внутри поставщика содержимого Android, который, по нашему мнению, как раз подходит для размещения кода базы данных. Будет подробно рассказано, как написать поставщик содержимого. Приведенный ниже код помогает проиллюстрировать, как в Android создается и используется база данных SQLite. В этом приложении будет применяться практически такая же база данных, как и в примере, где мы учились работать с инструментом командной строки sqlite3. Но на этот раз мы напишем код, в котором для управления данными используется API Android.

Читать »