Реклама
|
|
|
|
Популярные статьи
|
|
|
|
Реклама
|
|
|
|
Сейчас на сайте
|
|
Гостей: 9
На сайте нет зарегистрированных пользователей
Пользователей: 13,072
новичок: Deadik
|
|
Новости
|
|
|
|
|
Реклама
|
|
Выполняем курсовые и лабораторные по разным языкам программирования
Подробнее - курсовые и лабораторные на заказ
Delphi, Turbo Pascal, Assembler, C, C++, C#, Visual Basic, Java, GPSS, Prolog, 3D MAX, Компас 3D
Заказать программу для Windows Mobile, Symbian
База данных студентов на Delphi (файл записей) + Блок схемы
Обучающая и тестирующая программа по здаче экзамена ПДД на Turbo Pascal ...
Моделирование работы ЭВМ на GPSS + Пояснительная записка
|
|
Warning: preg_replace() [function.preg-replace]: Parameter mismatch, pattern is a string while replacement is an array in /var/www/u6406227/public_html/codingrus.ru/articles.php on line 38
Статьи: Приложения для смартфонов
|
Мониторинг входящих SMS-сообщений
Теперь воспользуемся только что созданным приложением для отправки SMS- сообщений и добавим широковещательный приемник для прослушивания действия android.provider.Telephony. SMS_RECEIVED. Это действие рассылается Android, когда SMS-сообщение принимается устройством. Имея зарегистрированный приемник, приложение будет уведомляться о получении SMS-сообщений.
Работа с папками SMS
Еще одним обычным требованием является доступ к папке входящих SMS. Для начала понадобится добавить в файл манифеста право на чтение SMS (android. permission.READ_SMS). Добавление этого права доступа дает возможность чтения папки входящих SMS.
Работа с диспетчером телефонии
API-интерфейсы телефонии также включают диспетчер телефонии (android. telephony.TelephonyManager), с помощью которого можно получать информацию о телефонных службах устройства, извлекать информацию о подписчике и регистрироваться на получение изменений состояния телефона.
Может возникнуть вопрос: возможно ли ответить на телефонный звонок в коде?
Может возникнуть вопрос: возможно ли ответить на телефонный звонок в коде? К сожалению, на данный момент в Android SDK таких средств не предусмотрено, даже несмотря на то, что из документации следует, что намерение можно инициировать с действием ACTION_ANSWER. На практике этот подход пока не работает, хотя имеет смысл проверить — вдруг что-то изменилось с момента написания этой книги.
Протокол установления сеанса
В версии Android. (Gingerbread) появились новые средства поддержки SIP, размещенные в пакете android.net.sip. Протокол установления сеанса (Session Initiation Protocol — SIP) — это стандарт IETF, регламентирующий передачу голоса и видео по сетевым соединениям для организации связи между людьми.
Демонстрационное приложение SipDemo
Google предоставляет демонстрационное приложение для SIP по имени SipDemo. Давайте рассмотрим это приложение и разберемся, как оно работает. Если вы — новичок в SIP, то определенные аспекты могут оказаться неочевидными. Чтобы поэкспериментировать с SipDemo, скорее всего, понадобится физическое устройство Android, поддерживающее SIP.
Пакет android.net.sip
Этот пакет содержит четыре базовых класса: SipManager, SipProfile, SipSession и SipAudioCall. Класс SipManager — ядро этого пакета, предоставляющее доступ к остальной функциональности SIP. Для получения объекта SipManager должен быть вызван метод newInstance класса SipManager. Затем с помощью этого объекта можно получить объект SipSession для большей части функциональности SIP или же объект SipAudioCall для только голосового звонка. Это значит, что компания Google предоставила в пакете android.net.sip средства, далеко выходящие за рамки стандарта SIP, а именно — возможность установки голосового звонка.
Инфраструктуры для работы с медиа
Мы подошли к рассмотрению очень интересной части Android SDK: инфраструктуры для работы с медиа. В этой будет, как воспроизводить и записывать аудио- и видеоконтент из самых разнообразных источнико. Также мы объясним, как получать фотографии с камеры.
Использование SD-карт
Прежде чем обратиться к созданию и использованию различных типов медиа, давайте рассмотрим работу с SD-картами. Эти карты применяются в телефонах Android для хранения большинства пользовательских данных — обычно медиа-контента, такого как изображения, аудио и видео.
Инструменты для разработки под Android
Инструменты для разработки под Android (Android Development Tools — ADT) в Eclipse позволяют определить дополнительные аргументы командной строки при запуске эмулятора. Для доступа к полю опций эмулятора откройте окно Preferences (Настройки) среды Eclipse и выберите AndroidOLaunch (AndroidOЗапуск).
Другой способ передачи файлов на SD-карту
Другой способ передачи файлов на SD-карту и обратно предусматривает использование утилиты adb. Чтобы опробовать его, откройте окно инструментов и введите примерно такую команду:
Воспроизведение медиа-контента
К сожалению, не существует метода, вызвав который, можно было бы выяснить, какой каталог может использоваться внутри DCIM для хранения изображений с камеры. Однако доступна пара методов, которые сообщат, где находится корневой каталог карты SD. Первый из них — Environment. getExternalStorageDirectory — возвращает объект File, представляющий каталог верхнего уровня SD-карты.
Воспроизведение аудиоконтента
Показан пользовательский интерфейс первого примера. Это приложение продемонстрирует некоторые фундаментальные применения класса MediaPlayer, такие как запуск, пауза, перезапуск и останов воспроизведения медиафайла. Взгляните на компоновку пользовательского интерфейса приложения.
Теперь давайте посмотрим на код обработки щелчков на кнопках Pause Player
Теперь давайте посмотрим на код обработки щелчков на кнопках Pause Player (Приостановить проигрыватель) и Restart Player (Перезапустить проигрыватель). При выборе кнопки Pause Player получается текущая позиция проигрывателя с помощью вызова getCurrentPosition. Затем с помощью вызова pause воспроизведение приостанавливается. Когда проигрыватель должен быть перезапущен, вызывается метод seekTo с передачей ему позиции, полученной ранее от getCurrentPosition, после чего вызывается start.
Метод setDataSource
В вызывался метод create для загрузки аудиофайла из низкоуровневого ресурса. При таком подходе вызывать setDataSource не нужно. В противном случае, если экземпляр MediaPlayer создается самостоятельно с использованием конструктора по умолчанию, или если медиа-контент не доступен через идентификатор ресурса либо URL, придется обращаться к методу setDataSource.
|
|
|
Гость
|
|
Вы не зарегистрированны? Нажмите здесь для регистрации.
Забыли пароль? Запросите новый здесь.
|
|
Загрузки
|
|
Новые загрузки
Случайные загрузки
Топ загрузок
|
|
|