【问题标题】:How Compare CurrentMessage.GetDisplayMessageBody() with string value如何将 CurrentMessage.GetDisplayMessageBody() 与字符串值进行比较
【发布时间】:2015-05-01 07:40:51
【问题描述】:

我正在开发一个应用程序,我正在将接收到的 SMS 文本与现有字符串变量进行比较,如果文本 Match Toast 弹出,否则我做错了什么?

public void onReceive(Context context, Intent intent) {
    // TODO Auto-generated method stub
    final Bundle bundle = intent.getExtras();

    final String pwd = "123";


    if(bundle != null)
    {

        final Object[] pdusObj = (Object[]) bundle.get("pdus");

        for (int i = 0; i < pdusObj.length; i++) {

            SmsMessage currentMessage = SmsMessage.createFromPdu((byte[]) pdusObj[i]);
            String phoneNumber = currentMessage.getDisplayOriginatingAddress();

            String senderNum = phoneNumber;
            String message = currentMessage.getDisplayMessageBody();


            Log.i("SmsReceiver", "senderNum: "+ senderNum + "; message: " + message);
            if(message == pwd)
            {


           // Show Alert
            int duration = Toast.LENGTH_LONG;
            Toast toast = Toast.makeText(context, 
                         message, duration);
            toast.show();
           }
            else
            {
                 int duration = Toast.LENGTH_LONG;
                 Toast toast = Toast.makeText(context,  "Doesn't match", duration);
                 toast.show();
            }


        } // end for loop

但条件并没有实现.. 总是“其他人的”吐司正在显示!

【问题讨论】:

    标签: android string broadcastreceiver string-comparison


    【解决方案1】:

    如果比较字符串使用:

    if(message.equals(pwd))
    

    安装于:

    if(message == pwd)
    

    【讨论】:

    • 非常感谢先生!它的工作现在!
    • 如果 message.equals(pwd) 条件为真,您能告诉我如何将手机音量从静音更改为 100% 响亮吗?
    • 如果我的回答对你有帮助,你可以接受(点赞)。对于其他查询,您必须提出新问题。
    • 我很想为您的答案投票,但我的声誉不足以投票谢谢!
    • Mr @Rahul Sharma 你能帮我解决这个问题吗stackoverflow.com/questions/29984427/…
    猜你喜欢
    • 2021-03-29
    • 1970-01-01
    • 1970-01-01
    • 2015-01-22
    • 1970-01-01
    • 1970-01-01
    • 2022-08-14
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多