#android #android-broadcastreceiver
#Android #android-broadcastreceiver
Вопрос:
У меня есть MapView.java
, в котором он запрашивает разрешение на SMS, разрешение на местоположение и т.д. Я создал новый класс Java для SMSReceiver
, который расширяется BroadcastReceiver
и имеет onReceive
метод.
Проблема в том, что я не могу решить, как я буду вызывать SMSReceiver
класс в свой MapView.Java
. Кто-нибудь может мне помочь?
Комментарии:
1. Вам нужно будет передать класс SMSReceiver, используя Intent.
2. Вам просто нужно зарегистрировать свой SMSReceiver в вашем классе MapView. Смотрите developer.android.com/guide/components/broadcasts
Ответ №1:
Попробуйте это.
Надеюсь, это поможет!
registerReceiver(mySMSBroadcastReceiver, new IntentFilter(SmsRetriever.SMS_RETRIEVED_ACTION));
Комментарии:
1. Написано «Не удается запустить activity ComponentInfo»
2. Предоставьте полный журнал.
3. E / AndroidRuntime: ФАТАЛЬНОЕ ИСКЛЮЧЕНИЕ: основной процесс: com.example.coni, PID: 1081 java.lang.RuntimeException: Не удается запустить activity ComponentInfo{com.example.coni/com.example.sample.MapView}: java.lang. Исключение NullPointerException: попытка вызвать виртуальный метод ‘android.content. Контекст android.view.View.getContext()’ для нулевой ссылки на объект в com.example.coni. MapView.onCreate(MapView.java:127)
4. Для пояснения я объявил View view в классе MapView. Это верно?
5. Мне нужно увидеть класс.