contentprovide 获取联系人信息,删除联系人信息

使用contentprovide查询手机联系人信息,然后删除,前面我们介绍了contentprovide的使用,这里我们直接通过一个简单的demo来验证下


首先要加入读取联系人的权限

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

删除的话还要添加写入权限

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


content://com.android.contacts/contacts操作的数据是联系人信息Uri

content://com.android.contacts/data/phones联系人电话Uri

content://com.android.contacts/data/emails联系人EmailUri

加入权限后,我们在MainActivity里的onCreate()方法里:

@Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);
        mContext = MainActivity.this;
        
        Cursor cursor = getContentResolver().query(ContactsContract.Contacts.CONTENT_URI, null, null, null, null);
        while (cursor.moveToNext()) {
            String contactId = cursor.getString(cursor.getColumnIndex(ContactsContract.Contacts._ID));
            String name = cursor.getString(cursor.getColumnIndex(ContactsContract.Contacts.DISPLAY_NAME));  
            Log.e("contactId", "contactId=" + contactId);
            Log.e("name", "name=" + name);
            Uri deleteUri  = ContentUris.withAppendedId(ContactsContract.Contacts.CONTENT_URI, Long.parseLong(contactId));
            int id = getContentResolver().delete(deleteUri, null, null);
            Log.e("id", "id=" + id);
        }
        cursor.close();
        
        Cursor phones = getContentResolver().query(ContactsContract.CommonDataKinds.Phone.CONTENT_URI, null,
                null, null, null);
        while (phones.moveToNext()) {
            String phoneNumber = phones.getString(phones.getColumnIndex(ContactsContract.CommonDataKinds.Phone.NUMBER));
            Log.e("RongActivity", "phoneNumber="+phoneNumber);
            
        }
        phones.close();
     
    }

然后直接运行就可以了哦

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值