admin
Получение файлов с использованием DownloadManager
В некоторых случаях приложению может понадобиться загрузить на устройство крупный файл. Поскольку это может занять длительное время, а процедура стандартизирована, в Android 2.3 был введен специальный класс, специально предназначенный для управления операциями такого типа: DownloadManager.
Назначение DownloadManager в том, чтобы… Читать далее
Подписание приложений для развертывания
Для установки Android-приложения на устройствах вначале понадобится подписать цифровым сертификатом Android-пакет (.apk-файл). Правда, сертификат может быть подписан и самостоятельно — не обязательно покупать сертификат в центре сертификации, подобном VeriSign.
Подписание приложения для развертывания осуществляется в три этапа. На первом этапе… Читать далее
Подписание .apk-файла с помощью утилиты jarsigner
Утилита keytool, описанная в предыдущем разделе, создает цифровой сертификат, который является одним из параметров средства jarsigner. Другой параметр — это Android-пакет, который необходимо подписать. Чтобы сгенерировать Android-пакет, необходимо использовать утилиту Export Unsigned Application Package (Экспорт неподписанного пакета приложения) из модуля… Читать далее
Первый дескриптор
Поскольку сейчас в нашем приложении имеются две активности, нужны два дескриптора активностей в файле AndroidManifest.xml. Первый дескриптор определяет стандартную активность категории LAUNCHER. Второй дескриптор предназначен для активности PreferenceActivity, поэтому мы устанавливаем имя действия согласно соглашению для намерений, а категорию —… Читать далее
Передача прав доступа к URI в намерения
Когда приложение вызывает другую активность и передает ей URI, то приложение может передать и права доступа к этому URI. Но для этого оно само должно иметь доступ к этому URI, а поставщик контента для URI должен иметь возможность совместной работы… Читать далее
Папка Android SDK/platforms
Для того чтобы этот пример работал, понадобится сделать еще одно. Нужно создать рисованный элемент emo_im_winking и поместить его в папку drawable проекта. Хорошим источником рисованных элементов для данной демонстрации является папка Android SDK/platforms/>Bepc^версия< обозначает интересующую версию. К сожалению, сослаться на рисованные элементы системы Android из кода так, как это делается для компоновки, не получится, поэтому понадобится скопировать все, что нужно, в папку drawable проекта. Если для примера выбран другой файл рисованного элемента, переименуйте идентификатор ресурса в конструкторе для Notification.
Когда намерение отправлено службе с использованием startService(), при необходимости вызывается метод onCreate(), а метод onStartCommand() выполняется для получения намерения от вызывающего кода. В этом случае мы не собираемся делать ничего особенного с намерением, кроме распаковки счетчика и его… Читать далее
Организация настроек
Инфраструктура работы с настройками предоставляет некоторую поддержку для организации настроек по категориям. Например, при наличии большого количества настроек можно построить представление, которое выводит высокоуровневые категории настроек. Пользователи могут входить в каждую категорию, чтобы просматривать и работать с настройками, специфичными для… Читать далее
Обзор концепций безопасности
ОС Android требует, чтобы приложения были подписаны цифровыми сертификатами. Одним из преимуществ этого требования является то, что приложение невозможно обновить версией, опубликованной не автором исходной версии. К примеру, если мы опубликуем какое-то приложение, то вы не сможете выпустить свою версию… Читать далее
Объявление и использование прав доступа
Android определяет схему прав доступа, предназначенную для защиты ресурсов и аппаратных компонентов устройства. Например, по умолчанию приложения не могут обращаться к списку контактов, производить телефонные звонки и т.д. Для защиты пользователя от вредоносных приложений Android требует, чтобы приложения запрашивали доступ,… Читать далее
Обработка тайм-аутов
Настройка одиночного объекта HttpClient в приложении обеспечивает и другие преимущества. Свойства HttpClient можно модифицировать в одном месте, и это окажет влияние на все остальное. Например, если требуется настроить общие значения тайм аутов для HTTP-запросов, это можно сделать при создании объекта… Читать далее