Android获取系统联系人
来源:互联网 发布:方舟优化补丁有用吗 编辑:程序博客网 时间:2024/05/22 23:15
可以先看看思维导图:
然后我们直接上代码:
界面的xml
<?xml version="1.0" encoding="utf-8"?><LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:tools="http://schemas.android.com/tools" android:layout_width="match_parent" android:layout_height="match_parent" tools:context="com.example.g160628_26_contentresolver_addressbook.MainActivity"> <Button android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="获取通讯录" android:onClick="getContacts"/></LinearLayout>
Java类:MainActivity.java
package com.example.g160628_26_contentresolver_addressbook;import android.content.ContentResolver;import android.database.Cursor;import android.net.Uri;import android.support.v7.app.AppCompatActivity;import android.os.Bundle;import android.util.Log;import android.view.View;public class MainActivity extends AppCompatActivity { private ContentResolver cr; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); //获取内容访问者 cr = getContentResolver(); } public void getContacts(View view){ //获取通讯录的数据 Uri uri=Uri.parse("content://com.android.contacts/raw_contacts"); Cursor cursor=cr.query(uri,null,null,null,null); while (cursor.moveToNext()){ //拿到ID int _id=cursor.getInt(cursor.getColumnIndex("_id")); //拿到名字 String display_name=cursor.getString(cursor.getColumnIndex("display_name")); //打印 Log.i("test",_id+" "+display_name); Uri uriData=Uri.parse("content://com.android.contacts/raw_contacts/"+_id+"/data"); Cursor cursorData=cr.query(uriData,null,null,null,null); while (cursorData.moveToNext()){ //拿到类型 String mimetype=cursorData.getString(cursorData.getColumnIndex("mimetype")); //拿到电话号码 String data1=cursorData.getString(cursorData.getColumnIndex("data1")); //打印 Log.i("test"," "+data1); } } }}
<?xml version="1.0" encoding="utf-8"?><manifest xmlns:android="http://schemas.android.com/apk/res/android" package="com.example.g160628_26_contentresolver_addressbook"> <!--获取手机的联系人--> <uses-permission android:name="android.permission.READ_CONTACTS"></uses-permission> <application android:allowBackup="true" android:icon="@mipmap/ic_launcher" android:label="@string/app_name" android:roundIcon="@mipmap/ic_launcher_round" android:supportsRtl="true" android:theme="@style/AppTheme"> <activity android:name=".MainActivity"> <intent-filter> <action android:name="android.intent.action.MAIN" /> <category android:name="android.intent.category.LAUNCHER" /> </intent-filter> </activity> </application></manifest>
当然这里也会有些手机行不通 不过这应该是手机中权限的问题吧 一般的都可以
阅读全文
0 0
- Android 获取系统联系人
- Android获取系统联系人
- Android获取系统联系人
- 【Android】Android获取系统联系人
- android系统联系人获取方法
- Android系统联系人信息获取
- Android系统联系人信息获取
- 关于Android开发获取系统联系人信息
- Android 获取系统联系人并排序
- Android 获取系统联系人并排序
- android分页查询获取系统联系人信息
- Android中 获取系统联系人信息
- 获取Android系统的联系人信息
- Android如何获取系统联系人数据?
- Android 获取系统联系人并排序
- Android 获取系统联系人并排序
- Android初级教程获取手机系统联系人信息
- Android中获取系统通讯录联系人
- Css实现用户引导效果
- 自然语言处理
- noVNC: HTML5 VNC Client
- 虚拟机笔记1---java内存区域
- 初识react环境配置
- Android获取系统联系人
- POJ
- C++学习篇——构造函数与析构函数
- java线程 全面详细的讲解
- 输出三位数的水仙花数
- Java 反射机制详解
- linked-list-cycle-ii
- 【Linux】线程总结:线程同步 -互斥锁,条件变量,信号量实现多生产者多消费者模型
- P1993 差分约束