Android 读取系统联系人
来源:互联网 发布:响应式编程和链式编程 编辑:程序博客网 时间:2024/05/04 10:34
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(); }}
0 0
- Android 读取系统联系人
- Android 选择系统联系人并读取联系人数据
- Android -- ContentProvider, 读取和保存系统 联系人
- Android wiki:15.读取系统联系人
- android 学习笔记 读取系统联系人
- Android开发之读取系统联系人
- Android内容提供者(一)读取系统联系人
- Android—ContentProvider读取系统联系人
- Android ContentResolver读取手机系统数据<联系人>
- Android------读取并选择系统联系人数据
- ContentProvider 读取系统联系人
- 读取系统联系人
- 读取系统的联系人
- 读取系统联系人
- 读取系统联系人
- android联系人读取
- Android 读取联系人(详细)
- android 读取联系人
- linux的条件变量和时间编程
- ucos操作系统
- C++ virtual函数重点
- H.264码流格式
- hdoj 2255 奔小康赚大钱 (KM算法 详解+模板)
- Android 读取系统联系人
- 期待
- linux进程管理之task_struct结构体
- hdu 1312
- [Leetcode] #48 Rotate Image
- C++中的::的作用
- 1186
- Junit下获取src/test/resource路径
- java匿名内部类