BroadcastReceiver не запускается для SMS_RECEIVED в Galaxy S II - PullRequest
2 голосов
/ 06 июля 2011

У меня последнее обновление для Samsung Galaxy S2, и теперь мое приложение перестает работать (приложение не получает смс).У меня SMSReceiver выходит из BroadcastReceiver с действием SMS_RECEIVED.

Это выглядит так:

private class SMSReceiver extends BroadcastReceiver {

        @Override
        public void onReceive(Context cntxt, Intent intent) {
            Log.i(TAG, "New broadcast receiver");
            SharedPreferences settings = getSharedPreferences(TAG, 0);
            if (settings.getString("authCode", "").equals("")) {
                Log.i(TAG, "Get sms");
                if (intent.getAction().toString().equals("android.provider.Telephony.SMS_RECEIVED")) {
                    Bundle bundle = intent.getExtras();
                    if (bundle != null) {
                        Object[] pdus = (Object[]) bundle.get("pdus");
                        final SmsMessage[] messages = new SmsMessage[pdus.length];
                        for (int i = 0; i < pdus.length; i++) {
                            messages[i] = SmsMessage.createFromPdu((byte[]) pdus[i]);
                        }
                        if (messages.length > -1) {
                            Log.i(TAG, "Read sms");
                        }
                    }
                }
            }
        }

Я регистрирую BroadcastReceiver так:

mSmsReceiver = new SMSReceiver();
IntentFilter filter = new IntentFilter("android.provider.Telephony.SMS_RECEIVED");
filter.setPriority(100000);
registerReceiver(mSmsReceiver, filter);

Все работает в HTC Desireили Desire Z и эмулятор андроида.На Galaxy S2 мой SMSReceiver не получает никакого намерения, когда пришло SMS.Я испробовал все решения, но они не дали никакого эффекта.

Ответы [ 2 ]

0 голосов
/ 26 октября 2011

Была такая же проблема с действием "android.net.conn.CONNECTIVITY_CHANGE" на Galaxy s2. Не удалось получить намерение переподключения, когда в коде был зарегистрирован приемник Broadcast. Регистрация приемника вещания в манифесте была для меня решением.

0 голосов
/ 01 сентября 2011

Вероятно, проблема с последней версией GoSMS

...