gpt4 book ai didi

java - 如何将android联系人访问到数组中

转载 作者:行者123 更新时间:2023-11-29 20:14:07 26 4
gpt4 key购买 nike

我刚刚开始使用 Android 和 Java,我正在尝试编写一个应用程序,允许您选择您的一些联系人,获取他们的姓名和主要号码并将它们放入单独的列表数组中。我不确定该怎么做,所以我只是手动添加它,您必须在其中键入每个人的姓名和电话号码。

List<String> phnnumbers = new ArrayList<String>();
List<String> names = new ArrayList<String>();
TextView quantityTextView = (TextView) findViewById(R.id.numbersview);
// Defines the box where we will grab the numbers
EditText addnumberfieldbox = (EditText) findViewById(R.id.addnumberfield);
EditText nameboxtext = (EditText) findViewById(R.id.namebox);
// Grabs the box's contents and puts it into useable data
Editable numberfieldEditable = addnumberfieldbox.getText();
Editable nameboxEditable = nameboxtext.getText();
// Finally uses the data from the box, and puts it in
String numberfieldString = numberfieldEditable.toString();
String nameboxString = nameboxEditable.toString();
names.add(nameboxString);
phnnumbers.add(numberfieldString);

这就是我用来获取文本并将其放入数组的方法。

最佳答案

要访问手机的联系人列表,您需要按照以下步骤操作:

第 1 步:在 manifest.xml 文件中添加访问联系人的权限

<uses-permission android:name="android.permission.READ_CONTACTS"/>

第 2 步: 使用以下代码获取姓名和电话号码,然后将它们存储到 ArrayList。

ArrayList<JSONObject> contacts = new ArrayList<>();

public void addContacts(){

//to store name-number pair
JSONObject obj = new JSONObject();

try {
Cursor phones = getContentResolver().query(ContactsContract.CommonDataKinds.Phone.CONTENT_URI, null, null, null, null);

while (phones.moveToNext()) {
String name = phones.getString(phones.getColumnIndex(ContactsContract.CommonDataKinds.Phone.DISPLAY_NAME));
String phoneNumber = phones.getString(phones.getColumnIndex(ContactsContract.CommonDataKinds.Phone.NUMBER));
obj.put(name, phoneNumber);
contacts.add(obj);

Log.e("Contact list with name & numbers", " "+contacts);
}
phones.close();
}
catch (Exception e){
e.printStackTrace();
}
}

您可以在您的应用程序代码中使用ArrayList 联系人

关于java - 如何将android联系人访问到数组中,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34283858/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com