Android 读取系统联系人
2017-02-18 21:29
260 查看
Android 读取系统联系人
以下是一个小demo比较简单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:id="@+id/activity_main" android:layout_width="match_parent" android:layout_height="match_parent" android:paddingBottom="@dimen/activity_vertical_margin" android:paddingLeft="@dimen/activity_horizontal_margin" android:paddingRight="@dimen/activity_horizontal_margin" android:paddingTop="@dimen/activity_vertical_margin" android:orientation="vertical" tools:context="com.dzz.android23_ecd.MainActivity"> <TextView android:layout_width="match_parent" android:layout_height="wrap_content" android:text="黑名单"/> <LinearLayout android:layout_width="match_parent" android:layout_height="wrap_content" android:orientation="horizontal"> <EditText android:layout_width="0dp" android:layout_height="wrap_content" android:hint="请输入黑名单号码" android:id="@+id/et_main" android:phoneNumber="true" android:layout_weight="6" /> <Button android:layout_width="0dp" android:layout_height="wrap_content" android:layout_weight="2" android:text="联系人" android:onClick="phone" /> </LinearLayout> <Button android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="设置为" android:onClick="set" android:layout_gravity="center" /> </LinearLayout>
Java代码:
package com.dzz.android23_ecd; import android.app.Activity; import android.app.PendingIntent; import android.content.ContentResolver; import android.content.DialogInterface; import android.content.Intent; import android.database.Cursor; import android.net.Uri; import android.provider.ContactsContract; import android.support.v7.app.AlertDialog; import android.support.v7.app.AppCompatActivity; import android.os.Bundle; import android.telephony.SmsManager; import android.view.LayoutInflater; import android.view.View; import android.widget.EditText; import android.widget.Toast; public class MainActivity extends AppCompatActivity { private EditText et_main; private PendingIntent pendingIntent; private SmsManager smsManager; private String usernumber; private String username; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); et_main = (EditText) findViewById(R.id.et_main); //保存电话号码 String eet= Define.getString(MainActivity.this,"con",""); et_main.setText(eet); pendingIntent = PendingIntent.getBroadcast(this, 0, new Intent(), 0); smsManager = SmsManager.getDefault(); } 给联系人添加点击 public void phone(View view){ startActivityForResult(new Intent(Intent.ACTION_PICK, ContactsContract.Contacts.CONTENT_URI), 0); } @Override protected void onActivityResult(int requestCode, int resultCode, Intent data) { super.onActivityResult(requestCode, resultCode, data); if (resultCode == Activity.RESULT_OK) { ContentResolver reContentResolverol = getContentResolver(); Uri contactData = data.getData(); @SuppressWarnings("deprecation") Cursor cursor = managedQuery(contactData, null, null, null, null); cursor.moveToFirst(); //联系人名字 username = cursor.getString(cursor.getColumnIndex(ContactsContract.Contacts.DISPLAY_NAME)); String contactId = cursor.getString(cursor.getColumnIndex(ContactsContract.Contacts._ID)); Cursor phone = reContentResolverol.query(ContactsContract.CommonDataKinds.Phone.CONTENT_URI, null, ContactsContract.CommonDataKinds.Phone.CONTACT_ID + " = " + contactId, null, null); while (phone.moveToNext()) { //联系人号码 usernumber = phone.getString(phone.getColumnIndex(ContactsContract.CommonDataKinds.Phone.NUMBER)); et_main.setText(usernumber +" ("+ username +")"); } } } public void set(View view) { final String et = et_main.getText().toString(); AlertDialog.Builder dl = new AlertDialog.Builder(MainActivity.this); dl.setTitle("温馨提示"); LayoutInflater inflater = getLayoutInflater(); dl.setMessage("你确定将" + et + "号码设置为黑名单吗?"); dl.setPositiveButton("确定", new DialogInterface.OnClickListener() { private String ee; @Override public void onClick(DialogInterface dialogInterface, int i) { if(et.indexOf("(")<0){ ee=et; }else{ ee = et.substring(0,et.indexOf("(")); } Toast.makeText(MainActivity.this, "设置成功!", Toast.LENGTH_SHORT).show(); Define.setString(MainActivity.this,"con",ee); } }); dl.setNegativeButton("还是算了", null); dl.show(); } }
相关文章推荐
- android 学习笔记 读取系统联系人
- Android获取 SIM 卡序列号+读取系统联系人
- Android内容提供器简单实例(读取系统联系人)
- Android初级开发(七)——内容提供器—读取系统联系人
- Android 读取系统联系人
- Android开发之读取系统联系人
- Android------读取并选择系统联系人数据
- 从Android系统联系人中读取某一个联系人的姓名与手机
- Android -- ContentProvider, 读取和保存系统 联系人
- Android内容提供者(一)读取系统联系人
- Android 选择系统联系人并读取联系人数据
- Android 点击按钮读取手机联系人并绑定到ListView中和点击按钮跳转系统联系人界面选中绑定至TextView
- Android读取系统联系人
- Android ContentResolver读取手机系统数据<联系人>
- Android—ContentProvider读取系统联系人
- android: 通过内容提供器读取系统联系人
- Android wiki:15.读取系统联系人
- android studio之读取系统联系人
- Android -- ContentProvider, 读取和保存系统 联系人
- Android 调用系统相机拍照(适配7.0)、从图库选择图片、从数据库读取联系人信息、相册图片、扫描文件