Рубрики
Сайт

SMS Android получить входящую СМС / Обработка СМС

Всем добрый день, если уж так получилось и в Вашем приложение необходимо сделать регистрацию через смс и платформа для этого выбрана android то инструкция по применению изложена ниже.
Цели: — Обработать событие пришедшей СМС; — Получить последню смс; — Вставить текст полученной смс в TextView.
Первым делом добавить привилегий в Наш AndroidManifest.xml на получение и обработку СМС.

<uses-permission android:name="android.permission.RECEIVE_SMS" />
<uses-permission android:name="android.permission.READ_SMS" />

Добавить монитор для просшлушивания входящиъх сообщений.





<receiver android:name="SMSMonitor">
<intent-filter android:priority="10">
<action android:name="android.provider.Telephony.SMS_RECEIVED"/>
</intent-filter>
</receiver>

Устанавливаем приоритет 10, чтобы наше приложение получило доступ к входящему СМС раньше стандартного обработчика СМС, которое имеет нулевой приоритет.
Полный листинг манифеста примерный:

<?xmlversion="1.0"encoding="utf-8"?><manifestxmlns:android="http://schemas.android.com/apk/res/android"package="com.androidexample.broadcastreceiver"android:versionCode="1"android:versionName="1.0"><applicationandroid:allowBackup="true"android:icon="@drawable/ic_launcher"android:label="@string/app_name"android:theme="@style/AppTheme"><activityandroid:name="com.androidexample.broadcastreceiver.BroadcastNewSms"android:label="@string/app_name"><intent-filter><actionandroid:name="android.intent.action.MAIN"/><categoryandroid:name="android.intent.category.LAUNCHER"/></intent-filter></activity><receiverandroid:name="SMSMonitor">  <intent-filter><actionandroid:name="android.provider.Telephony.SMS_RECEIVED"/></intent-filter></receiver></application><uses-sdkandroid:minSdkVersion="8"android:targetSdkVersion="17"/><uses-permissionandroid:name="android.permission.RECEIVE_SMS"></uses-permission><uses-permissionandroid:name="android.permission.READ_SMS"/></manifest>