2012-03-05 13 views
0

誰かが自分のアドレス帳からSMSを送信することを選択した場合、どのようにSMS番号を受け取ることができますか?インテントから番号(smsto :)を受信

Uri intentUri = getIntent().getData(); 
String to = URLDecoder.decode(String.valueOf(intentUri).replace("smsto:", "")); 

私はそのていない、おそらく最良の答えを知って、私は今やっている理由はここにあり

<intent-filter > 
      <action android:name="android.intent.action.SENDTO" /> 
      <category android:name="android.intent.category.DEFAULT" /> 
      <data android:scheme="sms" /> 
      <data android:scheme="smsto" /> 
</intent-filter> 

おかげ

答えて

0

を は今、私はそれを持っていると私は私のアプリを選択することができますしかしそれは仕事をします。

もう一度解決策が見つかったら教えてください。

0

Dataには、 "スキーム固有の部分"が含まれています。 Dataオブジェクトを手動で解析することなく、この部分を抽出することができます。

String scheme = intent.getData().getScheme(); 
if ("smsto".equals(scheme)) { 
    String number = intent.getData().getSchemeSpecificPart(); 
    // Do something with this number 
} 
関連する問題