Получение смс для андроид

Отправка и получение SMS сообщений в Android

Как это ни удивительно, SMS сообщений сегодня остаются одним из самых востребованных сервисов, что вполне объясняет интерес, проявляемый Android разработчики к этой тема. Из данного урока Вы узнаете, как программно отправлять и получать SMS сообщения. Будет показано, как провести тестирование приложения на эмуляторе.

Отправка SMS сообщений в Android

Создайте в Eclipse новый проект со следующими параметрами:

  • Project Name: SMSMessaging
  • Package name: net.learn2develop.SMSMessaging
  • Activity Name: SMS
  • Application Name: SMS App

Для того, чтобы наше прилоение могло работать с SMS, ему необходимо дать соответствующие разрешения: SEND_SMS для отправки и RECEIVE_SMS — для получения. Откройте файл AndroidManifest.xml и приведите его к виду:

Настроим шаблон дизайна приложения. Откройте файл res/layout/main.xml и приведите его к виду

В результате у Вас должен получиться следующий шаблон:

Перейдем к редактированию кода. В SMS activity напишем обработчик нажатия на кнопку. После щелчка мы должны проверить введен ли номер телефона и текстовое сообщение. Если все в порядке, мы вызываем функцию sendSMS(), которая отправляет сообщение.

Напишем реализацию функции sendSMS()

Для отправки SMS сообщения в Android используется класс SmsManager. в отличии от друих классов, мы не можем получить экземпляр SmsManager напрямую. Для решения этой задачи необходимо вызвать статический метод getDefault(), который возвращает требуемый объект класса SmsManager. Метод sendTextMessage() отправляет sms сообщение с помощью PendingIntent. Объект PendingIntent используется для определения activity, которая будет вызвана после отправки сообщения. В приведенном выше коде объект pi ссылается на ту же activity из которой он вызывается, то есть после отправки SMS сообщения activity не поменяется.

Если Вы хотите отслеживать состояние процесса отправки сообщения, вам понадобится два объекта PendingIntent и два объекта BroadcastReceiver

В приведенном выше листинге объект sentPI используется для отслеживания процесса отправки. Когда SMS сообщение отправлено, генерируется первое событие onReceive для BroadcastReceiver. Именно здесь можно проверить статус процесса отправки. Объект PendingIntent (deliveredPI) используется для мониторинга доставки. Когда сообщение успешно доставлено, генерируется еще одно событие onReceive для BroadcastReceiver.

Теперь можно провести тесстирование приложения. При отладке на компьютере можно посылать сообщения от одного эмулятора другому. Для этого просто запустите два эмулятора (в папке android SDK зайдите в каталог Tools Emulator.exe). В качестве номера, куда вы отправляете SMS, нужно указать номер порта эмулятора. Его можно увидеть в загаловке окна эмулятора в круглых скобках. На рисунке показан пример отправки сообщения с эмултора 5554 на эмулятор 5556.

Читайте также:  Что такое android tv стик

После успешной отправки SMS пользователю будет показано сообщение «SMS sent». После того, как сообщение будет принято на другом устройстве, пользователь увидит «SMS delivered». К сожалению, в случае тестирования на эмуляторе Вы не увидите этого сообщения. Возможность проверять успешность доставки доступна только на реальных устройствах.

Если Вы не хотите разбираться в тонкостях отправки SMS сообщений, то можете воспользоваться встроенным в Android стандартным приложением, дав ему задание через интент.

Получение SMS сообщений в Android

Помимо отправки SMS вы также можете организовать перехват входящих SMS сообщений. Делается это с помощью все того же объекта BroadcastReceiver.

Чтобы Ваше приложение могло перехватывать SMS-ки, нужно в файле AndroidManifest.xml добавить элемент . В приведенном ниже примере для получения сообщений будет использоваться класс SmsReceiver.

Теперь нужно добавить в проект новый класс SmsReceiver.java, который является наследником BroadcastReceiver. Внутри SmsReceiver нужно написать собственную реализацию метода onReceive()

При получении SMS сообщения вызывается метод onReceive. SMS сообщение упаковывается и присоединяется к объекту intent (второй параметр метода onReceive). SMS сохраняется в массиве Object в PDU формате. Чтобы распаковать SMS сообщение нужно воспользоваться методом createFromPdu() класса SmsMessage. После этого можно отобразить сообщения с помощью класса Toast

Вот, собственно, и все! Можете запускать эмуляторы и тестировать приложение. На приведенном ниже рисунке с помощью класса Toast показано полученное сообщение.

Заключение

В этой небольшой статье было показано, как можно отправлять и получать SMS сообщения в Android. Это очень интересная и нужная возможность. Например, вы можете написать приложение, которое будет отслеживать положение телефона. Вы можете отправлять зашифрованные SMS сообщения этому приложению, и оно будет отправлять вам ответ с координатами аппарата.

Исходный код примера можно скачатьздесь.

Источник

Настройка получения SMS на Android

Этап 1: Получение необходимой информации

Перед настройкой телефона нужно произвести некоторую подготовку, а именно, узнать точный тарифный план и получить номер СМС-центра. Эти данные можно найти в личном кабинете сотового оператора, обратившись к его технической поддержке или посредством фирменного приложения.

Читайте также: Приложения Мой МТС и Мой Билайн для Android

Этап 2: Настройка Android

Следующий шаг заключается в установке приложения по умолчанию для получения СМС и его конфигурирования. В качестве примера приведём последовательность действий на смартфоне под управлением «чистого» Андроида.

  1. Перейдите к параметрам любым удобным способом.

Далее воспользуйтесь опциями «Приложения и уведомления»«Приложения по умолчанию».

Найдите пункт «SMS» и тапните по нему.

После замены появится предупреждение о необходимости ввода пароля, если настроена блокировка экрана.

  • Перезагрузите телефон – на большинстве устройств под управлением Android 10 для этого нужно нажать и подержать клавишу «Power», затем выбрать пункт «Перезапустить» во всплывающем меню.
  • Читайте также:  Какие файлы андроида нельзя удалять

    Таким образом мы задали приложение для СМС по умолчанию. Теперь покажем пример настройки, используя встроенный в десятый Андроид клиент «Сообщения».

    1. Запустите программу, после чего нажмите на кнопку «Ещё» (три точки вверху справа), где выберите опцию «Настройки».

  • Кратко пройдёмся по доступным параметрам:
    • «Приложение по умолчанию» – дублирует возможности выбора из предыдущей инструкции;
    • «Уведомления» – категория опций, связанных с получением и отображением уведомлений, более подробно рассмотрим их в отдельной статье;
    • «Звук при отправке сообщения» – название опции говорит само за себя, по умолчанию активна;
    • «Ваша текущая страна» – домашний регион сотовой сети, важный параметр, от правильной установки которого зависит стабильная работа SMS-клиента. Для задания корректного значения тапните по этой опции и выберите регион, сотовым оператором которой вы в данный момент пользуетесь;

    Для конфигурирования СМС нам нужен пункт «Дополнительно», переходите к нему.

    Из представленных в этой категории опций первым следует активировать переключатель «Служебные сообщения».

    Также рекомендуется активировать чёрный список: тапните по варианту «Защита от спама», затем воспользуйтесь переключателем «Включить защиту от спама».

  • Самая важная опция из расположенных здесь называется «Номер телефона» – в ней находится ваш номер отправителя.
  • Настройки SMS-центра

    Что же касается опций центра получения SMS, ситуация следующая: что каждый производитель по-своему реализовывает доступ к этим параметрам – например, в новейшем интерфейсе OneUI 2.0 от компании Samsung он организован через параметры стокового приложения для получения текстовых сообщений.

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

      Для открытия опций SMS-центра запустите приложение для совершения звонков и введите в нём код *#*#4636#*#* .

    Появится окно утилиты проверки. Выберите в ней пункт «Информация о телефоне».

    Прокрутите список параметров в самый низ – там должен находиться блок со строкой «SMSC». Посмотрите на её содержимое – если она пуста или в ней присутствует надпись «update error», это означает, что возможность доступа к СМС отсутствует.

    Для решения этой проблемы вручную введите правильный номер, затем нажмите «Обновление» и перезагрузите устройство.

    Установка данного параметра в других оболочках происходит по схожему алгоритму, отличается только способ получения доступа к нему.

    Мы рассказали вам о настройке SMS на телефоне с Android. Как видим, всё довольно просто и понятно.

    Помимо этой статьи, на сайте еще 12470 инструкций.
    Добавьте сайт Lumpics.ru в закладки (CTRL+D) и мы точно еще пригодимся вам.

    Отблагодарите автора, поделитесь статьей в социальных сетях.

    Источник

    Sms Activate 2.1

    SMS-Activate — поставщик виртуальных номеров для приема смс с целью регистрации на различных сервисах.

    Мы не используем ручной труд, прием смс на виртуальный номер полностью автоматизирован, поэтому стоимость наших услуг минимальна, а скорость приема смс — максимальна.

    Что дает приложение SMS-Activate:

    • ПРИВАТНОСТЬ. Все мы знаем, что происходит, если везде указывать свой личный мобильный телефон. Начинают сыпаться звонки, sms рассылка с предложениями кредитов, стоматологов и прочих прелестей, которые, кроме раздражения, ничего не несут. Как этого избежать? Указывайте при регистрациях виртуальный номер, купленный у нас в приложении, и вам никогда не будут докучать с назойливыми предложениями и sms спамом.
    • ЭКОНОМИЯ. Сталкивались с ситуацией, когда есть промокод с приятной скидкой или бонусами, но воспользоваться им можно только 1 раз? Теперь это не проблема. Приобретайте виртуальный номер, регистрируйте еще один аккаунт и используйте «одноразовый» промокод снова. Где применимо: Агрегаторы такси, службы доставки, маркетплейсы и многое другое😉
    • ЗАРАБОТОК. Размещаетесь на досках объявлений, но размещение более одного объявления стоит денег? Не беда! Используйте наши номера «ПЕРЕАДРЕСАЦИЯ» и «ПЕРЕАДРЕСАЦИЯ PRO». Покупаете у нас номер, размещаете объявление и принимаете звонки от клиентов на свой основной номер. Объявлений много, а заявки идут на ваш основной номер. А может вы занимаетесь SMM, таргетом, контекстом и прочей деятельностью в сети? У вас есть постоянная потребность в регистрациях аккаунтов, а для них нужен номер телефона? Не надо бежать за номером в салон сотовой связи каждый раз! Просто приобретайте номера у нас в приложении! Как на короткий срок — АКТИВАЦИИ, так и на длительный промежуток времени — АРЕНДА.

    Мы предлагаем номера двух вариантов:

    • АКТИВАЦИИ. В течении 20 минут вы можете принять неограниченное количество смс для выбранного вами сервиса. Поэтому данное направление очень популярно для тех, кто зарегистрировал аккаунт, воспользовался им и не боится его потерять. Идеально подходит для промокодов и бонусов. Вы платите только за сообщение, если номер не получил сообщение, деньги возвращаются на баланс.
    • АРЕНДА. Будет полезна тем, кто хочет быть уверен в том что всегда сможет получить доступ к созданному аккаунту в течение длительного промежутка времени. Вы в любой момент аренды можете принять смс, что в свою очередь позволяет восстановить доступ к аккаунту. Номер предоставляется на длительный срок – до 12 недель. Если в течении первых 20 минут вы не получили смс с кодом, вы можете отказаться от номера, деньги вернутся на ваш счет в полном объеме. Если вы не получили смс и прошло более 20 минут, отменить аренду будет невозможно. Проданный номер в аренду, не будет перепродан под соответствующий сервис по истечению срока аренды.

    В наличии огромное количество номеров, самые разнообразные префиксы, 20 000+ России, 10 000+ Индонезии, 5 000+ Англии онлайн каждый день! 180+ стран в наличии, постоянно добавляются новые, самые разные и экзотичные.

    Источник

    Читайте также:  Vivo y91c обновление до андроид 10
    Оцените статью