Отправляйте данные из широковещательного приемника в простой класс Java, пока приложение закрыто.JAVA

Программисты JAVA общаются здесь
Ответить Пред. темаСлед. тема
Anonymous
 Отправляйте данные из широковещательного приемника в простой класс Java, пока приложение закрыто.

Сообщение Anonymous »


Я создаю приложение для Android для обработки SMS, я сделал Broadcast Receiver для прослушивания входящих SMS. когда дело доходит до этого, он должен отправить SMS-содержимое в другой класс, чтобы выполнить некоторую логику. Для этого я использовал интерфейс, это мой код.

публичный класс SmsReceiver расширяет BroadcastReceiver { public static void initSmsFetcher(SmsFetcher mSmsFetcher){ smsFetcher = mSmsFetcher; } @SuppressLint("UnsafeProtectedBroadcastReceiver") @Override public void onReceive (контекст контекста, намерение намерения) { Дополнительные возможности пакета = Intent.getExtras(); если (дополнительно != ноль){ Object[] smsextras = (Object[]) extras.get( "pdus"); for (Объект smsextra : smsextras) { SmsMessage smsmsg = SmsMessage.createFromPdu((byte[]) smsextra); smsFetcher.onSmsReceived(smsmsg); } } } } интерфейс SmsFetcher{ недействительными onSmsReceived (SmsMessage smsMessage); } это мой простой класс.

Открытый класс SmsEasy реализует SmsFetcher{ СмсEasy(){ SmsReceiver.initSmsFetcher(это); } @Override public void onSmsReceived (SmsMessage smsMessage) { // Выполняем некоторую логику. } } И это моя основная активность.

публичный класс MainActivity расширяет AppCompatActivity { smsEasy smsEasy; @Override protected void onCreate (Bundle saveInstanceState) { super.onCreate(saveInstanceState); setContentView(R.layout.activity_main); smsEasy = новый SmsEasy(); } } Я зарегистрировал свой широковещательный приемник в манифесте. Это работает нормально, когда мое приложение работает, но проблема возникает, когда приложение закрывается: мне сообщается, что smsFetcher имеет значение null в этой строке: smsFetcher.onSmsReceived(smsmsg); но мой приемник по-прежнему нормально захватывает SMS.
Реклама
Ответить Пред. темаСлед. тема

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

  • Похожие темы
    Ответы
    Просмотры
    Последнее сообщение

Вернуться в «JAVA»