2013-08-17 104 views
0

我嘗試寫短信管理器,我想從聯繫人訪問我的應用程序。我添加下面一行到清單從發送到意圖獲取數據

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

及其工作,但我想查看聯繫號碼,姓名,身份證件和......從這個意圖,怎樣才能得到的數據?

回答

1

在這種情況下,與此也就足夠了:

//In the activity 
Intent intent = getIntent(); 
String data = intent.getDataString(); 
//The result in data will be like sms:999%9999%9999 the % it's because is a URI 
//If you want to get the phoneNumber directly 
String phoneNumber = i.getData().getSchemeSpecificPart();//The result 999 9999 9999 

所以,你可以從PHONENUMBER(999 9999 9999)的聯繫人姓名獲取,標識,etc.Wich答案,你可以在這裏看到:

Get Contact by Phone number on Android

當您嘗試使用一個意圖過濾器的第一件事是文檔哪裏/如何,創建者發送信息的搜索。在這種情況下:

http://developer.android.com/reference/android/content/Intent.html#ACTION_SENDTO