2011-06-27 20 views
7

"私はどこですか?"のようなメッセージ本文でSMSメッセージを送信します。 「私はどこですか?」をクリックすると、Googleマップのウェブサイトに移動します。 私の質問は、このハイパーリンクを "私はどこですか?"メッセージテキスト? 私は勉強できる例はありますか?アンドロイド携帯電話のSMSメッセージにハイパーリンクを追加するにはどうすればよいですか?

+0

私はSMSが単なるテキストのためだと思います。 – Blender

答えて

8

SMSはテキストのみで、160文字しか使用できません。あなたが示唆しているのは、「私はどこですか? 160文字で表示されますが、何とか非常に長いウェブアドレスが含まれています。

まず、何らかのURL短縮サービスを利用することをお勧めします。私は私が個人的にお勧めできるものはありませんが、Djangoのアプリケーションや、bit.lyのようなAPIを使ってフックできるオンラインサービスがあります。これにより、SMSの利用可能な文字に簡単にフィットするユニークなリンクが得られます。

ほとんどのスマートフォンはリンクを解析し、S​​MS内にあってもリンクをクリックできるようにします。たとえば、テキストを次のように読み取ることができます。

Where am I? www.linkgoesh.ere/somehash 

ユーザーは、リンクをクリックしてウェブサイトにアクセスできるはずです。それはあなたが示唆しているものほどエレガントではありませんが、SMSは(必然的に)限られたフォーマットです。

+0

ありがとうございます、私はあなたの懇願を試みるでしょう! – Jim31837

+1

私は家に帰ってテストしました。はい、SMSを介してAndroid携帯にアドレス(例:www.loadingreadyrun.com)を送信すると、SMSアプリケーションはそれを解析してクリックしてブラウザを開きます住所を訪問する。とにかく欲望の作品。 –

+0

しかし、すべてのデバイスがこの動作を複製するわけではないので、注意してください。探してみたいことは、「プッシュSMS」です。これらは、URLをSMSクライアントにプッシュし、ハンドセットが自動的にリソースを開くように設計されています.MMSクライアントを取得してサーバーから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

コードの機能について簡単に説明します。 –

関連する問題