简体   繁体   English

SmsManager无法发送一些消息

[英]SmsManager fails to send some messages

I have implemented to Send message of character length is 500,so divided into 160 character messages. 我已经实现了发送字符长度为500的消息,所以分为160个字符消息。

But in that it skips a few message so i added with async task,but still the problem continuous,can help me solve 但是因为它跳过了一些消息,所以我添加了异步任务,但问题仍然持续存在,可以帮助我解决

here is my code, 这是我的代码,

public class SendMessage
    {

        public static void SendSMS(Activity activity, String Msg)
        {

            try {
                 SmsSendTask mAuthTask=null;
                 mAuthTask = new SmsSendTask(Msg);
                 mAuthTask.execute((Void) null);
            } catch (Exception e) {
                Toast.makeText(activity, "SMS failed, please try again.", Toast.LENGTH_LONG).show();
                System.out.println(e.toString()+"<<e>>>");
                e.printStackTrace();
            }
        }


        public static class SmsSendTask extends AsyncTask<Void, Void, Boolean> {
            private final String _msg;
                SmsSendTask(String msg) {
                _msg = msg;
        }

            @Override
            protected Boolean doInBackground(Void... params) {
                 try {
                    Thread.sleep(5000);
                } catch (InterruptedException e) {
                    return false;
                }
                SmsManager smsManager = SmsManager.getDefault();
                smsManager.sendTextMessage("9246591931", null, _msg, null, null);
                return true;
            }

            @Override
            protected void onPostExecute(final Boolean success) {
                if (success) {
                } else {
                }
            }

            @Override
            protected void onCancelled() {
            }
        }
    }
    String body="this is my message";
    SmsManager sms = SmsManager.getDefault();
    ArrayList<String>arraylist = new ArrayList<String>();
    arraylist=sms.divideMessage(body);
    try
    {
        sms.sendMultipartTextMessage(address, null,arraylist, null,null);

    }
    catch (Exception e)
    {

    }

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM