как поделиться ссылкой через смс в ежевике - PullRequest
0 голосов
/ 28 августа 2011

Я создаю приложение, в котором мне нужна возможность поделиться по электронной почте и SMS.

Я сделал общий доступ по электронной почте, где, когда пользователь выбирает изображение, URL-адрес передается в качестве содержимого электронного письма. Но при совместном использовании через SMS я не могу сделать что-то вроде setContent, как я сделал для электронной почты и получить URL-адрес в SMS напрямую, вместо того, чтобы вводить адрес вручную.

Я использую класс Message в электронной почте и класс MessageConnection для SMS, как показано в примере сообщества Blackberry.

Ответы [ 2 ]

0 голосов
/ 29 августа 2011

Когда вы отправляете электронное письмо, вы можете установить его тело и отправить его пользователю из собственного приложения электронной почты. Вы не можете сделать так для SMS. Я работал над этим вопросом, и для BB Torch я смог установить текст сообщения SMS, но для других устройств это было невозможно. Я всегда получаю пустое текстовое сообщение !!

Таким образом, вам предлагается использовать следующий код, который отправит SMS на номер без вмешательства пользователя

MessageConnection conn = (MessageConnection) Connector.open("sms://" + userNumber);
TextMessage txtmessage = (TextMessage) conn.newMessage(MessageConnection.TEXT_MESSAGE);
txtmessage.setPayloadText(text);
conn.send(txtmessage);
0 голосов
/ 29 августа 2011

Объект Message, который вы получаете при вызове MessageConnection.newMessage (TEXT_MESSAGE), на самом деле является объектом TextMessage (или объектом BinaryMessage с BINARY_MESSAGE).

Если вы приведете полученный объект к соответствующему классу (TextMessage или BinaryMessage), вы сможете использовать его setPayloadText (String data) (или setPayloadData (byte [] data) для BinaryMessage), чтобы ввести значение в сообщение перед отправкой.

Ваш код должен выглядеть следующим образом:

Message msg = myMessageConnection.newMessage(TEXT_MESSAGE, /* address */);
TextMessage txtMsg = (TextMessage)msg;
txtMsg.setPayloadText(/* Text to send */);
myMessageConnection.send(msg);
...