Android

Запрос POST

Запрос POST

Для запуска многоэлементного запроса POST потребуется создать экземпляр HttpPost и вызвать его метод setEntity() с передачей ему экземпляра MultipartEntity (вместо UrlEncodedFormEntity, который создавался для отправки параметров “имя/значение” формы). MultipartEntity представляет тело многоэлементного запроса POST. Как видно в коде, сначала создается… Читать далее

Выравнивание приложения утилитой zipalign

Выравнивание приложения утилитой zipalign

Весьма желательно, чтобы приложение во время своей работы использовало память максимально эффективно. Если приложение содержит несжатые данные (например, некоторые виды изображений или файлы данных), то Android может отобразить эти данные непосредственно в память с помощью вызова mmap() . Однако для… Читать далее

Выполнение HTTP-запроса

Выполнение HTTP-запроса

При выполнении HTTP-запроса GET параметры (имена и значения) запроса передаются как часть URL. С передачей параметров таким способом связаны некоторые ограничения. В частности, длина URL не должна превышать 2048 символов. Если требуется отправить больший объем данных, необходимо использовать HTTP-запрос POST.… Читать далее

Возникновение условия ANR

Возникновение условия ANR

Обратите внимание, что теперь можно установить тайм-аут в 60 секунд, не переживая о возникновении условия ANR. В коде видно, что информация о ходе работ обновляется в течение шагов настройки подключения HttpClient, выполнения HTTP-запроса, преобразования ответа в виде изображения в массив… Читать далее

Установка приложений вручную

Установка приложений вручную

После подписания и выравнивания .apk-файла можно установить его вручную в эмуляторе с помощью утилиты adb. Давайте проделаем это в качестве упражнения. Запустите эмулятор. Один из еще не описанных здесь способов — это выбор в меню Window (Окно) пункта AVD Manager… Читать далее

Установка обновлений для приложения и подписание

Установка обновлений для приложения и подписание

Ранее уже упоминалось, что у сертификата имеется срок действительности, и в Google рекомендуют устанавливать этот срок очень большим, чтобы его хватило на множество обновлений приложения. Но что же все-таки случится, когда срок действительности сертификата истечет? Будет ли приложение работать в… Читать далее

Уровень защиты системы

Уровень защиты системы

В зависимости от уровня защиты система может по- разному определять, выдавать разрешение или нет.

Уровень normal говорит о том, что риск невысок и не может повредить системе, пользователю или другим приложениям.

Уровень dangerous говорит о высоком риске, и система, скорее… Читать далее

Указание прав доступа к URI в поставщиках контента

Указание прав доступа к URI в поставщиках контента

Итак, каким образом поставщик контента указывает права доступа к URI? Это делается в файле AndroidManifest.xml одним из двух способов.

• В дескрипторе >provider< можно установить в true или false атрибут android:grantUriPermissions. Значение true означает, что разрешен доступ к любому контенту из данного поставщика контента. Значение false означает второй способ задания прав доступа к URI, или же поставщик контента может решить не позволять никому другому предоставлять доступ.

• Можно указать права доступа с помощью дочерних дескрипторов для >provider<. Дочерним дескриптором является >grant-uri-permission<, и в одном дескрипторе >provider< их может быть несколько. У дескриптора >grant-uripermission< может быть три следующих атрибута:

• android:path позволяет указать полный путь, который будет иметь выдаваемые права доступа;

• android:pathPrefix позволяет указать… Читать далее

Структура объекта Service

Структура объекта Service

Структура объекта Service в чем-то похожа на структуру активности. Здесь предусмотрены методы onCreate(), где можно выполнять инициализацию, и onDestroy(), в котором обычно производится очистка. До выхода Android 2.0 класс службы имел метод onStart(), а в версии 2.0 появился метод onStartCommand().… Читать далее

Специальные права доступа и их использование

Специальные права доступа и их использование

Android позволяет определить специальные права доступа для приложения. Например, если нужно запретить некоторым пользователям запуск в рамках приложения одной из активностей, то это можно сделать, определив специальные права доступа. Для этого нужно вначале объявить их в файле AndroidManifest.xml, а потом… Читать далее