2011-06-27 48 views
7

我想發送短信與消息正文一樣,「我在哪裏?」 當我點擊「我在哪裏?」時,它會帶我到我的位置的谷歌地圖網站。 我的問題是,我該如何在「我在哪裏?」中添加這個超鏈接。消息文本? 有什麼我可以學習的例子嗎?如何在android手機中的短信中添加超鏈接?

+0

我認爲短信只是用於文本。 – Blender

回答

8

短信是純文本的,他們只允許160個字符。你的建議將包括'我在哪裏?'在160個字符,但也不知何故包括一個很長的網址。

您可能想要做的第一件事就是利用某種URL縮短服務。我沒有一個我可以親自推薦的,但有Django應用程序等,以及可以使用API​​(如bit.ly)掛鉤的在線服務。這將爲您提供一個獨特的鏈接,輕鬆適應SMS的可用字符。

大多數智能手機都會解析鏈接並使其「可點擊」,即使它在短信中也是如此。因此,例如,您可以將文本讀取爲:

Where am I? www.linkgoesh.ere/somehash 

用戶應該能夠點擊鏈接並訪問您的網站。它不像你所建議的那麼優雅,但是SMS是一種(必然)有限的格式。

+0

謝謝,我會嘗試你的提示! – Jim31837

+1

我回到家並進行了測試,是的,如果您通過短信發送地址(例如www.loadingreadyrun.com)到Android手機,SMS應用程序將解析並允許點擊它,從而打開瀏覽器並訪問地址。反正在慾望上工作。 –

+0

但是要小心,因爲不是所有的設備都會重複這種行爲。您可能想要考慮的另一種方法是「推送短信」。這些旨在將URL推送到SMS客戶端並使手機自動打開資源,它們通常用於讓MMS客戶端從服務器下載彩信。 – shawty

-2

試試這個代碼,它應該可以解決你的問題。

String uri = "http://maps.google.com/maps?saddr="+latitude +","+longitude;         
SmsManager smsManager = SmsManager.getDefault(); 
StringBuffer smsBody = new StringBuffer(); 
//long number = Long.parseLong(get_number); 
smsBody.append(Uri.parse(uri)); 
smsManager.sendTextMessage(get_number, null, smsBody.toString(), null, null); 
+9

習慣上添加一些關於代碼功能的簡單說明。 –