簡體   English   中英

Galaxy S II 上的 SMS_RECEIVED 未觸發 BroadcastReceiver

[英]BroadcastReceiver not triggered for SMS_RECEIVED on Galaxy S II

我有三星 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 和 android 模擬器。 在 Galaxy S2 上,我的 SMSReceiver 在收到短信時沒有收到任何 Intent。 我嘗試了所有解決方案,但沒有任何效果。

可能是最新版 GoSMS的問題

Galaxy s2 上的“android.net.conn.CONNECTIVITY_CHANGE”操作也有同樣的問題。 在代碼中注冊廣播接收器時無法接收重新連接意圖。 在清單中注冊廣播接收器是我的解決方案。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM