Android SMS接收代码在一台设备上工作,但在另一台设备上不工作(Micromax E4820)

Android SMS接收代码在一台设备上工作,但在另一台设备上不工作(Micromax E4820),android,sms,Android,Sms,未调用onReceive方法 我检查了广播接收器的呼叫代码,它工作正常。 以下代码适用于我的Intex Elyt Dual(7.0),但不适用于其他6.0.1版本 public void onReceive(Context context, Intent intent) { Toast.makeText(context, "on Receive", Toast.LENGTH_SHORT).show(); Bundle bundle = intent.getExtras();

未调用onReceive方法

我检查了广播接收器的呼叫代码,它工作正常。 以下代码适用于我的Intex Elyt Dual(7.0),但不适用于其他6.0.1版本

public void onReceive(Context context, Intent intent) {
Toast.makeText(context, "on Receive", Toast.LENGTH_SHORT).show();
        Bundle bundle = intent.getExtras();
        if (bundle != null) {
            Object[] pdus = (Object[]) bundle.get("pdus");
            msgs = new SmsMessage[pdus.length];
            for (int i = 0; i < msgs.length; ++i) {
                // Convert Object array
                hereComesNewSMS = hereComesNewSMS++ ;
                msgs[i] = SmsMessage.createFromPdu((byte[]) pdus[i]);
                // Sender's phone number
                str += "SMS from " + msgs[i].getOriginatingAddress() + " : ";
                // Fetch the text message
                str += msgs[i].getMessageBody().toString();
                str += "\n";
                latestSMSnumber = msgs[i].getOriginatingAddress();
                latestSMScontent = str;

            }
            // Display the entire SMS Message
            Log.e("TAG1 number: ", latestSMSnumber);
            Log.e("TAG2 content: ", str);
}
public void onReceive(上下文、意图){
Toast.makeText(上下文“接收时”,Toast.LENGTH_SHORT).show();
Bundle=intent.getExtras();
if(bundle!=null){
Object[]pdus=(Object[])bundle.get(“pdus”);
msgs=新SMS消息[PDU.length];
对于(int i=0;i
另一台设备是否可能有一些额外的设置或权限,防止第三方应用程序在后台运行,或者特别是在用户未明确启用的情况下接收短信?请查看设备设置以及可能出现的任何其他独立的、与安全相关的应用程序。我实际上阅读了所有通信我向您保证,WhatsApp、TrueCaller和手机银行应用程序确实会在OTP手机中接收短信。如果系统应用程序的优先级更高,那么上述应用程序如何工作?就像WhatsApp。此外,我可以保证TrueCaller即使在我将其设置为默认短信应用程序后也不会作为默认短信应用程序工作。以及关于设置:我尝试了所有的应用程序设置和默认消息应用程序设置,甚至切换了这些设置。好吧,一些制造商会对一些大牌应用程序(如WhatsApp)有例外,因此这些应用程序会自动工作。但是,如果你的随机银行应用程序在不启用它的情况下工作,那么它可能没有任何进一步的限制我真的不明白你所说的“TrueCaller即使在我将其设置为默认短信应用程序后也不能作为默认短信应用程序工作”是什么意思。我的意思是,即使我为短信服务设置了默认应用程序,Truecaller也不会收到新收到的短信。任何新短信都会打开默认短信服务应用程序。如果我想在Truecaller中阅读短信服务,我需要打开Truecaller。默认短信服务应用程序会处理所有新短信。我通过安装名为“下一条短信”的新短信服务应用程序来检查短信服务的行为.每次我打开应用程序,它都会要求我将其设置为默认的短信应用程序,我每次都会这样做,但它仍然没有成为默认的短信应用程序。这真的很奇怪。我从来没有听说过这样的行为。如果没有这样的设备进行观察和测试,我不知道下一步该建议什么。