Android学习篇章38-ContentProvider-获取联系人信息
2013-11-03 11:22
423 查看
Mainactivity:
XML:
权限:
public class MainActivity extends Activity { ListView listview=null; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); listview=(ListView)findViewById(R.id.listview1); Cursor c=this.getContentResolver().query(ContactsContract.Contacts.CONTENT_URI, null, null, null,null); ArrayAdapter<String> adapter=new ArrayAdapter<String>(this,android.R.layout.simple_list_item_1); while(c!=null && c.moveToNext()) { //获得每一个联系人的id和姓名 StringBuilder sb=new StringBuilder(); int contacts_id=c.getInt(c.getColumnIndex(ContactsContract.Contacts._ID)); String name=c.getString(c.getColumnIndex(ContactsContract.Contacts.DISPLAY_NAME)); sb.append("姓名:"+name); //好处是自动管理游标的生命周期 Cursor phone_cursor=this.managedQuery(ContactsContract.CommonDataKinds.Phone.CONTENT_URI, null, ContactsContract.CommonDataKinds.Phone.CONTACT_ID+"="+contacts_id, null, null); if(phone_cursor!=null&&phone_cursor.moveToFirst()) { String phone= phone_cursor.getString(phone_cursor.getColumnIndex(ContactsContract.CommonDataKinds.Phone.NUMBER)); sb.append(" 电话:"+phone); } adapter.add(sb.toString()); if(phone_cursor!=null) phone_cursor.close(); } if(c!=null)c.close(); listview.setAdapter(adapter); } @Override public boolean onCreateOptionsMenu(Menu menu) { // Inflate the menu; this adds items to the action bar if it is present. getMenuInflater().inflate(R.menu.main, menu); return true; } }
XML:
<RelativeLayout 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=".MainActivity" > <ListView android:id="@+id/listview1" android:layout_width="match_parent" android:layout_height="match_parent" /> </RelativeLayout>
权限:
<uses-permission android:name="android.permission.READ_CONTACTS"/> <uses-permission android:name="android.permission.WRITE_CONTACTS"/>
相关文章推荐
- Android 利用ContentProvider获取联系人信息
- Android应用学习记录------AsyncTask和AsyncQueryHandler结合获取手机联系人信息
- Android(java)学习笔记249:ContentProvider使用之获得系统联系人信息01
- android-ContentProvider获取联系人信息
- Android(java)学习笔记250:ContentProvider使用之获得系统联系人信息02(掌握)
- Android学习--隐式Intent获取联系人信息或电话
- Android学习篇章39-ContentProvider-获取短信数据
- android获取联系人信息
- android软件开发之获取通讯录联系人信息
- Android软件开发之获取通讯录联系人信息
- android_ContentProvider获取手机联系人
- Android开发之contentprovider获取手机所有联系人(姓名、号码、邮箱)
- Android 之 获取联系人信息
- android获取所有联系人信息
- 获取android所有联系人信息
- android获取手机联系人信息(电话,邮箱,姓名,头像)
- Android学习之获取系统应用信息列表的实现
- Android软件开发之获取通讯录联系人信息
- <转载>Android软件开发之获取通讯录联系人信息
- android,获取联系人信息