最近需要做到这么一个功能,获取联系人信息,并且将联系人姓名和电话显示到屏幕上,上网查了很多资料,折腾了很久才做出来,特此写下感想。
代码原理不多讲,度娘一大堆,在贴代码之前想说一下过程中容易忽略的地方:
1.添加运行时权限,很多时候我们往往只在清单里面添加如下权限,然而在android6之后需要添加运行时权限,否则照样无法运行。
<uses-permission android:name="android.permission.READ_CONTACTS" />
<uses-permission android:name="android.permission.READ_PHONE_STATE" />
<uses-permission android:name="android.permission.WRITE_CONTACTS" />
2.本想通过ImageView设置点击事件,结果出现了问题,还是换成了Button
下面是完整代码:
XML:
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:background="@drawable/background"
android:orientation="vertical">
<LinearLayout
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginTop="110dp"
android:orientation="horizontal"
android:layout_gravity="center_horizontal">
<TextView
android:id="@+id/welcome"
android:layout_width="wrap_content"
android:layout_height="48dp"
android:layout_below="@+id/linearLayout"
android:text="设置求助人信息"
android:textColor="#000000"
android:textSize="27dp" />
<Button
android:id="@+id/getContacts"
android:layout_width="wrap_content"