在线咨询
微信咨询
服务热线
服务热线:15639912513
TOP
当前位置:
首页 > 新闻中心> 安卓课堂>android查询联系人数据过程

android查询联系人数据过程

发布时间:2020-02-22 浏览:3404次

郑州app开发查询联系人数据过程。布局代码只是一个button。以下是java代码

MainActivity.java

package cn.xhhkj.cyd;


import androidx.appcompat.app.AppCompatActivity;


import android.content.ComponentName;

import android.content.ContentResolver;

import android.content.ContentValues;

import android.content.Intent;

import android.content.ServiceConnection;

import android.database.Cursor;

import android.database.sqlite.SQLiteDatabase;

import android.net.Uri;

import android.os.Bundle;

import android.os.IBinder;

import android.util.Log;

import android.util.Xml;

import android.view.View;


import org.xmlpull.v1.XmlSerializer;


import java.util.ArrayList;


public class MainActivity extends AppCompatActivity {

    private static final String TAG = "结果是";

    private ArrayList<Contact> contacts = new ArrayList<Contact>();

    @Override

    protected void onCreate(Bundle savedInstanceState) {

        super.onCreate(savedInstanceState);

        setContentView(R.layout.activity_main);

    }


    public void query(View view) {

        ContentResolver resolver = getContentResolver();

        Uri raw_contact_uri = Uri.parse("content://com.android.contacts/raw_contacts");

        Uri data_uri = Uri.parse("content://com.android.contacts/data");

        Cursor cursor = resolver.query(raw_contact_uri, new String[]{"contact_id"}, null, null, null);

        while(cursor.moveToNext()){

            String id = cursor.getString(0);


            Log.d(TAG,"id"+id);

            String[] projection ={"data1","mimetype"};

            Contact contact = new Contact();

            Cursor cursor2 = resolver.query(data_uri, projection, "raw_contact_id=?", new String[]{id}, null);

           while(cursor2.moveToNext()){

                String result = cursor2.getString(0);

                String type = cursor2.getString(1);


               Log.d(TAG,result+"====="+type);

               if("vnd.android.cursor.item/phone_v2".equals(type)){

                    contact.phone = result;

               }else if("vnd.android.cursor.item/email_v2".equals(type)){

                    contact.email = result;

                }else if("vnd.android.cursor.item/name".equals(type)){

                   contact.name = result;

               }else if("vnd.android.cursor.item/postal-address_v2".equals(type)){

                   contact.address = result;

               }

           }

            contacts.add(contact);

        }

        for(Contact contact:contacts){

           System.out.println(contact);

            Log.d(TAG,"contact"+contact);

        }

    }

}

Contact.java

package cn.xhhkj.cyd;


public class Contact {

    public String name;

    public String address;

    public String email;

    public String phone;

    @Override

    public String toString() {

        return "Contact [name=" + name + ", address=" + address + ", email="

                + email + ", phone=" + phone + "]";

    }

}


 


 


TAG
3404
该内容对我有帮助