zoukankan      html  css  js  c++  java
  • android 通过ContentResolver获得联系人数据

    package MyGetContacts.code;

    import android.app.Activity;
    import android.content.ContentResolver;
    import android.database.Cursor;
    import android.net.Uri;
    import android.os.Bundle;
    import android.provider.ContactsContract;
    import android.widget.TextView;

    public class MainActivity extends Activity {
        /** Called when the activity is first created. */
        
        TextView textView;
        
        @Override
        public void onCreate(Bundle savedInstanceState) {
            super.onCreate(savedInstanceState);
            setContentView(R.layout.main);
            
            textView = (TextView)findViewById(R.id.textView);
            String str = getQueryData();
            textView.setText(str);
            
        }


        private String getQueryData()
        {
            String result = "";
            ContentResolver resolver = getContentResolver();
            Cursor cursor = resolver.query(ContactsContract.Contacts.CONTENT_URI,null,null,null,null);
            
            int idIndex = cursor.getColumnIndex(ContactsContract.Contacts._ID);
            int nameIndex = cursor.getColumnIndex(ContactsContract.Contacts.DISPLAY_NAME);
            
            //for(cursor.moveToFirst();(!cursor.isAfterLast());cursor.moveToNext())
            while(cursor.moveToNext())
            {
                String contactId = cursor.getString(idIndex);
                
                Cursor phone = resolver.query(ContactsContract.CommonDataKinds.Phone.CONTENT_URI,
                        null,ContactsContract.CommonDataKinds.Phone.CONTACT_ID + "=" + contactId,
                        null,null);
                
                result = result + contactId + "\t";
                
                while(phone.moveToNext())
                {
                    int i = phone.getColumnIndex(ContactsContract.CommonDataKinds.Phone.NUMBER);
                    String num = phone.getString(i);
                    result += num;
                }
     
                result = result + cursor.getString(nameIndex) + "\t\n";
                
                phone.close();
            }
            cursor.close();  


            return result;
        }
    }

    最后别忘了 加上 <uses-permission android:name="android.permission.READ_CONTACTS"/>  这个权限,否则运行会出错

    (真不知道google加这些权限干嘛用,脑残~~~)

  • 相关阅读:
    Android Studio 1.0 初体验
    JAVA笔记:死锁的详细解释
    JAVA笔记:多线程的理解及应用(三)
    JAVA笔记:多线程的理解及应用(二)
    JAVA笔记:多线程的理解及应用(一)
    mysql 中文编码
    k8s删除node
    k8s 卸载
    kubernetes 集群master变更ip地址
    docker常用指令
  • 原文地址:https://www.cnblogs.com/rollrock/p/2385992.html
Copyright © 2011-2022 走看看