Полученная строка SMS разбивается на два андроида - PullRequest
0 голосов
/ 02 июля 2019

У меня есть приложение для Android, которое получает SMS и показывает его в TextView, но текст разбивается на две части, и я получаю только последнюю его часть. Текстовое сообщение:

"Sometext SometextLBS: http://www.somewebsite.com/Page.aspx?n=4.78900,-24.03711 ,bat:69%" 

Проблема в буквах L B S, потому что как только я меняю это, строка не разбивается? Я попытался создать другую переменную и поместить ее внутри, если с помощью переменной, которую я определил в цикле for.

@Override
public void onReceive(Context context, Intent intent) {
    //Toast.makeText(context, "SMS Received", Toast.LENGTH_SHORT).show();

    if (intent.getAction().equals("android.provider.Telephony.SMS_RECEIVED")) {
        Bundle bundle = intent.getExtras();

        SmsMessage[] msgs;
        String msg_from;
        if (bundle != null) {
            try {
                Object[] pdus = (Object[]) bundle.get("pdus");

                msgs = new SmsMessage[pdus.length];


                for (int i = 0; i <msgs.length; i++) {
                    msgs[i] = SmsMessage.createFromPdu((byte[]) pdus[i]);
                    msg_from = msgs[i].getOriginatingAddress();

                    String msgBody = msgs[i].getMessageBody();



                    msgBody=msgBody.replaceAll("Hexagonal prismeLBS: ","");

                   //String coordenatesX = msgBody.substring(msgBody.indexOf("=")+1);
                    String coordenatesX = msgBody.substring(msgBody.indexOf("=")+1);
                    String coordenatesY = msgBody.substring(msgBody.indexOf(",")+1);

                    //Toast.makeText(context, "Coordenadas"+coordenates, Toast.LENGTH_SHORT).show();


                    Bundle extras = intent.getExtras();
                    Intent intent1 = new Intent("broadCastName");
                    // Data you need to pass to activity
                    intent1.putExtra("coordx",coordenatesX);
                    intent1.putExtra("coordy",coordenatesY);

                    context.sendBroadcast(intent1);


                }

            } catch (Exception e) {
                e.printStackTrace();
            }

Я хочу показать это в текстовом представлении:

"Sometext SometextLBS: http://www.somewebsite.com/Page.aspx?n=4.78900,-24.03711 ,bat:69%" I am getting "-24.03711 ,bat:69%"
...