2011-08-28 74 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);