2

電話帳を呼び出して、ユーザーが1つ(またはオプションで複数)の電話番号を選択できるようにしたい(ユーザーが自分で番号を書くのをスキップして代わりに1つを選択できるようにするため、連絡先情報全体ではなく電話番号のみが必要です)。これは私がこれまでに見つけたものです:

Intent contactPickerIntent = new Intent(Intent.ACTION_PICK,  
                    ContactsContract.Contacts.CONTENT_URI);  
startActivityForResult(contactPickerIntent, CONTACT_PICKER_RESULT);

これにより、選択された連絡先が返されますが、電話番号がまったくないか、または多くなる可能性があります (すべてが必要なわけではありません。必要なのは 1 つだけです。ユーザーが ListView または Spinner を使用して選択できるようにすることもできますが、電話番号がいくつかある必要があると思います)。私の携帯電話のメッセージアプリにはそのようなピッカーがあるため、そのためのAPI(まあ、もっと快適かもしれませんが、メッセージアプリではなくAPIだと思います)。

4

1 に答える 1

0

これは API を使用して可能です 。https ://developer.android.com/guide/components/intents-common.html#Contacts を参照してください。

ユーザーが連絡先から特定の情報 (電話番号、電子メール アドレス、その他のデータ型など) を選択できるようにするには、ACTION_PICK アクションを使用して、CommonDataKinds など、以下にリストされているコンテンツ タイプのいずれかに MIME タイプを指定します。連絡先の電話番号を取得する Phone.CONTENT_TYPE。

インテントの例のスニペット:

    Intent intent = new Intent(Intent.ACTION_PICK);
    intent.setType(CommonDataKinds.Phone.CONTENT_TYPE);
    startActivityForResult(intent, REQUEST_SELECT_PHONE_NUMBER);

上記のリンクのドキュメントで、結果をどのように処理するかを確認できます。

于 2017-08-06T13:20:58.170 に答える