如果 phone 号码为空,我已经设置了一个条件,记录它,否则发送它,但即使没有 phone 号码,条件也不会执行
i have put a condition if phone number is empty, log it else sent it but condition is not excuting even if there is no phone number
这是我发的短信activity请告诉我问题出在哪里即使没有号码else条件还在执行
public void sendMySMS() {
Log.d(TAG, "sendMySMS: Activated");
Intent i = getIntent();
listOfAllMessages = i.getStringArrayListExtra("messages");
listOfAllContacts = i.getStringArrayListExtra("contacts");
size = listOfAllContacts.size();
for (int j = 0; j < listOfAllContacts.size(); j++) {
String phone = listOfAllContacts.get(j);
String message = listOfAllMessages.get(j);
if(phone.isEmpty()) {
Log.d(TAG, "sendMySMS: " + phone);
Log.d(TAG, "sendMySMS: " + message);
}
else {
Log.d(TAG, "sendMySMS: " + phone);
Log.d(TAG, "sendMySMS: " + message);
SmsManager sms = SmsManager.getDefault();
sendStatusTextView.setText("Sending Messages");
PendingIntent sentIntent = PendingIntent.getBroadcast(SendingSms.this, 0, new Intent("SMS_SENT"), 0);
sms.sendTextMessage(phone, null, message, sentIntent, null);
}
}
}
检查您的日志,确保 phone 变量的值不是 space 而不是空白或 null
。 isEmpty()
returns 仅在 ""
和 null
.
的情况下为真
你需要尝试这样做!
public void sendMySMS() {
Log.d(TAG, "sendMySMS: Activated");
Intent i = getIntent();
listOfAllMessages = i.getStringArrayListExtra("messages");
listOfAllContacts = i.getStringArrayListExtra("contacts");
size = listOfAllContacts.size();
for (int j = 0; j < size.size(); j++) {
String phone = listOfAllContacts.get(j);
String message = listOfAllMessages.get(j);
if(phone.isEmpty()) {
Log.d(TAG, "sendMySMS: " + phone);
Log.d(TAG, "sendMySMS: " + message);
}
else {
Log.d(TAG, "sendMySMS: " + phone);
Log.d(TAG, "sendMySMS: " + message);
SmsManager sms = SmsManager.getDefault();
sendStatusTextView.setText("Sending Messages");
PendingIntent sentIntent = PendingIntent.getBroadcast(SendingSms.this, 0, new Intent("SMS_SENT"), 0);
sms.sendTextMessage(phone, null, message, sentIntent, null);
}
}
}
这是我发的短信activity请告诉我问题出在哪里即使没有号码else条件还在执行
public void sendMySMS() {
Log.d(TAG, "sendMySMS: Activated");
Intent i = getIntent();
listOfAllMessages = i.getStringArrayListExtra("messages");
listOfAllContacts = i.getStringArrayListExtra("contacts");
size = listOfAllContacts.size();
for (int j = 0; j < listOfAllContacts.size(); j++) {
String phone = listOfAllContacts.get(j);
String message = listOfAllMessages.get(j);
if(phone.isEmpty()) {
Log.d(TAG, "sendMySMS: " + phone);
Log.d(TAG, "sendMySMS: " + message);
}
else {
Log.d(TAG, "sendMySMS: " + phone);
Log.d(TAG, "sendMySMS: " + message);
SmsManager sms = SmsManager.getDefault();
sendStatusTextView.setText("Sending Messages");
PendingIntent sentIntent = PendingIntent.getBroadcast(SendingSms.this, 0, new Intent("SMS_SENT"), 0);
sms.sendTextMessage(phone, null, message, sentIntent, null);
}
}
}
检查您的日志,确保 phone 变量的值不是 space 而不是空白或 null
。 isEmpty()
returns 仅在 ""
和 null
.
你需要尝试这样做!
public void sendMySMS() {
Log.d(TAG, "sendMySMS: Activated");
Intent i = getIntent();
listOfAllMessages = i.getStringArrayListExtra("messages");
listOfAllContacts = i.getStringArrayListExtra("contacts");
size = listOfAllContacts.size();
for (int j = 0; j < size.size(); j++) {
String phone = listOfAllContacts.get(j);
String message = listOfAllMessages.get(j);
if(phone.isEmpty()) {
Log.d(TAG, "sendMySMS: " + phone);
Log.d(TAG, "sendMySMS: " + message);
}
else {
Log.d(TAG, "sendMySMS: " + phone);
Log.d(TAG, "sendMySMS: " + message);
SmsManager sms = SmsManager.getDefault();
sendStatusTextView.setText("Sending Messages");
PendingIntent sentIntent = PendingIntent.getBroadcast(SendingSms.this, 0, new Intent("SMS_SENT"), 0);
sms.sendTextMessage(phone, null, message, sentIntent, null);
}
}
}