Wenn ich eine Nachricht mit der falschen Telefonnummer (zB => 093.485) zu senden, war die Botschaft delivered.In Tatsache, nicht die NachrichtAndroid gelieferte Nachricht falsche Nummer war Arbeit
geliefert werden, warum ich ACTION_SMS_DELIVERED
sogar erhalte wenn ich SMS an eine ungültige Nummer m sende?
Intent sendIntent = new Intent(ACTION_SMS_SENT);
sendIntent.putExtra(Helper.KEY_SIM_DELIVER, id);
Intent deliverIntent = new Intent(ACTION_SMS_DELIVERED);
deliverIntent.putExtra(Helper.KEY_SIM_DELIVER, id);
PendingIntent piSent = PendingIntent.getBroadcast(S.context, 0, sendIntent, PendingIntent.FLAG_UPDATE_CURRENT);
PendingIntent piDelivered = PendingIntent.getBroadcast(S.context, 0, deliverIntent, PendingIntent.FLAG_UPDATE_CURRENT);
SmsManager smsManager = SmsManager.getDefault();
int smsSize = 0;
int length = message.length();
if (length > MAX_SMS_MESSAGE_LENGTH) {
ArrayList<String> messagelist = smsManager.divideMessage(message);
ArrayList<PendingIntent> sentIntents = new ArrayList<PendingIntent>();
ArrayList<PendingIntent> deliveryIntents = new ArrayList<PendingIntent>();
for (int i = 0; i < smsSize; i++) {
sentIntents.add(PendingIntent.getBroadcast(S.context, 0, sendIntent, PendingIntent.FLAG_UPDATE_CURRENT));
deliveryIntents.add(PendingIntent.getBroadcast(S.context, 0, deliverIntent, PendingIntent.FLAG_UPDATE_CURRENT));
}
smsManager.sendMultipartTextMessage(phoneNumber, null, messagelist, sentIntents, deliveryIntents);
} else {
minesCredit(isPesians, phoneNumber);
smsManager.sendTextMessage(phoneNumber, null, message, piSent, piDelivered);
}
DeliveryBroadcastReceiver
public void onReceive(Context context, Intent intent) {
String action = intent.getAction();
Bundle extras = intent.getExtras();
if (action.equals(ACTION_SMS_DELIVERED)) {
switch (getResultCode()) {
case Activity.RESULT_OK: {
String id = extras.getString(Helper.KEY_SIM_DELIVER);
Log.d(TAG, "SMS Delivered from =>" + id);
break;
}
case Activity.RESULT_CANCELED:
Log.d(TAG, "SMS not Delivered =>");
break;
}
}
:
Meine Nachricht Methode senden.
Wenn Sie die Standard-SMS-App verwenden, um eine Nachricht an ungültige Nummern, ihre Arbeit und die Nachricht zu senden wird nicht geliefert –