我希望用戶選擇我的應用程序將向其發送SMS的聯繫人。我如何確保當我使用ACTION_PICK意圖開始活動時,只會顯示帶手機號碼的聯繫人?如何僅通過具有移動電話的聯繫人啓動ACTION_PICK活動
目前,我開始的活動是這樣的:
Intent intent = new Intent(Intent.ACTION_PICK, Phones.CONTENT_URI);
我希望用戶選擇我的應用程序將向其發送SMS的聯繫人。我如何確保當我使用ACTION_PICK意圖開始活動時,只會顯示帶手機號碼的聯繫人?如何僅通過具有移動電話的聯繫人啓動ACTION_PICK活動
目前,我開始的活動是這樣的:
Intent intent = new Intent(Intent.ACTION_PICK, Phones.CONTENT_URI);
我懷疑這是不可能的。您需要一個單獨的Uri,電話內容提供商用來將輸出限制爲僅限手機。我沒有看到這樣的Uri存在。
您仍然可以選擇僅使用電話號碼的用戶,但您必須使用自己編寫活動。
閱讀代碼,它看起來像你可以指定UI.LIST_CONTACTS_WITH_PHONES_ACTION行動,意圖只顯示電話號碼的聯繫人。儘管如此,我還沒有嘗試過。使用聯繫人選擇器將顯示與所有的電話號碼列表時
intent.setType(android.provider.ContactsContract.CommonDataKinds.Phone.CONTENT_TYPE);
但是:另外,這個動作具有與接觸相同的效果設置「僅顯示有電話聯繫人」
您可以使用聯繫人名稱每個上面,所以如果一個聯繫人有多個號碼,你會看到該聯繫人的多個條目
我在想這可能與CONTENT_FILTER_URI有關。任何想法是什麼用於? – Prashast 2009-06-16 01:25:37
看起來像是用於獲取特定電話號碼的聯繫人 - 請參閱http://almondmendoza.com/2009/01/30/getting-the-contact-info-when-on-a-number/ – CommonsWare 2009-06-16 02:52:34