Вопрос:
Я отправляю SMS в своем приложении для Android,
SmsManager sm = SmsManager.getDefault(); String number = «1234567890»; sm.sendTextMessage(number, null, «Test SMS Message—Successful», null, null);
Он работает нормально. Мой вопрос: возможно ли добавить строку/текст вместо номера мобильного телефона отправителя? так что в мобильном получателе номер мобильного телефона отправителя будет отображаться как строка/текст.
Лучший ответ:
Нет. Это невозможно. Вот несколько причин:
- Когда вы отправляете sms, используя SmsManager, вы кодируете его с содержимым – собственно текстовым сообщением. Вы также кодируете его с номером телефона, на который вы его отправляете. И вы кодируете номер центра сообщений в сообщении. Это все, что вы можете кодировать. Затем Android/аппаратные средства отправляют его на башню сотового телефона, где он находится вне ваших рук.
- Если вы каким-то образом попытались закодировать номер телефона получателя в виде текста, то оператор не знал бы, как обрабатывать сообщение. Ему некуда было бы отправить его.
- Сотовые телефоны не имеют входящего идентификатора вызывающего абонента (или смс) – если, конечно, номер не запрограммирован.
- Когда сеть перевозчика отправляет смс, она проходит через центр сообщений. Центр сообщений определяет, какие данные пересылаются на телефон получателя. Центры сообщений, доступные в настоящее время, просто не поддерживают то, что вы хотите – по крайней мере, не для потребителя.
Ответ №1
Да, можно изменить номер телефона отправителя, но вам необходимо использовать сторонний SMS-шлюз. Вы можете перенаправить SMS-сообщение с номера телефона, который вы зарегистрируете для своего приложения.
Twilio –
TextMagic – http://www.textmagic.com/app/pages/en/products/bulk-sms-gateway-api