2011-08-28 73 views
-2

我正在构建一个应用程序,我需要通过电子邮件和短信共享选项。如何通过黑莓短信分享链接

我已经通过电子邮件完成了分享,当用户选择图片时,网址将作为电子邮件的内容传递。但是,通过短信分享时,我无法按照我对电子邮件所做的那样执行setContent之类的操作,而是直接在SMS中获取网址,而不是用户手动输入地址。

我在短信的电子邮件和MessageConnection类中使用了消息类,如黑莓社区示例中所示。

回答

0

调用MessageConnection.newMessage(TEXT_MESSAGE)时收到的Message对象实际上是一个TextMessage对象(或带有BINARY_MESSAGE的BinaryMessage对象)。

如果您将接收到的对象转换为适当的类(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); 
+0

我会说,虽然干扰,我从来没有编码的黑莓。这完全基于RIM文档。买者自负 – 3Doubloons

0

当您发送一封电子邮件,你可以设置它的身体,并将其发送到从电子邮件本地应用程序的用户。你不能做短信。我在这个问题上工作,对于BB火炬,我能够设置短信的文本,但对于其他设备是不可能的。我总是获得一个空的短信!

桑尼给你的建议是使用下面的代码至极将发送短信到一个号码,而无需用户

MessageConnection conn = (MessageConnection) Connector.open("sms://" + userNumber); 
TextMessage txtmessage = (TextMessage) conn.newMessage(MessageConnection.TEXT_MESSAGE); 
txtmessage.setPayloadText(text); 
conn.send(txtmessage);