「Androidの連絡先リストを開く方法」を示すオンラインの投稿をたくさん見ましたが、それらはすべて時代遅れであり、一部のコードはもう機能しません.
編集:
次のようになりました。
public class MessagePreview extends Activity {
final int PICK_CONTACT = 3;
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
Button recipientContact = (Button) findViewById(R.id.buttonAddRecipient);
recipientContact.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
// TODO Auto-generated method stub
Intent intent = new Intent(Intent.ACTION_PICK,
ContactsContract.Contacts.CONTENT_URI);
startActivityForResult(intent, PICK_CONTACT);
}
});
}
@Override
public void onActivityResult(int reqCode, int resultCode, Intent data) {
super.onActivityResult(reqCode, resultCode, data);
switch (reqCode) {
case (PICK_CONTACT):
if (resultCode == Activity.RESULT_OK) {
Uri contactData = data.getData();
Cursor c = managedQuery(contactData, null, null, null, null);
if (c.moveToFirst()) {
String name = c.getString(c
.getColumnIndexOrThrow(People.NAME));
// TODO Whatever you want to do with the selected contact
// name.
}
}
break;
}
}
}
エラーはありませんが、
- フィールド Contacts.PeopleColumns.NAME は非推奨です
- タイプ Contacts.People は非推奨です
- フィールド Contacts.PeopleColumns.NAME は非推奨です
- タイプ Contacts.People は非推奨です
この行で:
文字列名 = c.getString(c.getColumnIndexOrThrow(People.NAME));
その行の後にさらにコードを追加する必要がありますが、何を追加すればよいかわかりません。