问题描述
大家好。
在我的主要活动中,我有一个按钮,该按钮向数字“ 1234”发送消息“ john doe”。
send.setonClickListener(new View.OnClickListener() {
@Override
public void onClick( View v) {
if (Build.VERSION.SDK_INT >=Build.VERSION_CODES.M) {
if (checkSelfPermission(Manifest.permission.SEND_SMS)== PackageManager.PERMISSION_GRANTED){
sendSms(); }
}
else { requestPermissions(new String[]{ Manifest.permission.SEND_SMS},1);}
}
}
});
还有我的sendSMS()函数:
private void sendSMS() {
String phoneNo="1234";
String SMS = "John Doe";
try {
SmsManager smsManager= SmsManager.getDefault();
smsManager.sendTextMessage(phoneNo,null,SMS,null);
oldSms=RecieveSms.SmsBody;
} catch (Exception e) {
e.printstacktrace();
}
}
当我快速按下按钮(例如1秒钟10次)并转到默认的短信应用程序时,我可以看到一条短信已发送,发送之后,第二条短信突然出现并被发送,然后第三部分,依此类推。据我了解,SmsManager侦听广播传递响应。因此,我每次按下按钮时都会尝试创建新线程:
send.setonClickListener(new View.OnClickListener() {
@Override
public void onClick( View v) {
if (Build.VERSION.SDK_INT >=Build.VERSION_CODES.M) {
if (checkSelfPermission(Manifest.permission.SEND_SMS)== PackageManager.PERMISSION_GRANTED){
new Thread(new Runnable() {
@Override
public void run() {
sendSMS();
}
}).start();
}
else { requestPermissions(new String[]{ Manifest.permission.SEND_SMS},1);}
}
}
});
结果是一样的。
我想要的是,当我按下按钮(1秒内10次)并转到默认的短信应用程序时,我应该看到正在发送10条短信(即使它们处于保留状态并处于“正在发送”状态),但是在发送时应该有10条短信可见。
我很喜欢任何暗示或建议。请不要犹豫。谢谢。
解决方法
暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!
如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。
小编邮箱:dio#foxmail.com (将#修改为@)