- 浏览: 433721 次
- 性别:
- 来自: 上海
文章分类
最新评论
-
IThead:
纠结了几天,用了你的方法,现在解决了,谢谢!
Eclipse 写Javascript卡死问题 -
Rubicon__:
你好,我在运用PageWidget这个类时,出现第一页翻到第二 ...
android翻书效果实现原理( 贝塞尔曲线绘制原理/点坐标计算) -
lionios:
如果不显示printDialog,则打印出来的是空白页,请问你 ...
Print打印机例子 -
rayln:
weiqiulai 写道哥们儿,我怎么没有看到监控队列的配置和 ...
JMS监听MQ实例 -
weiqiulai:
哥们儿,我怎么没有看到监控队列的配置和代码?
JMS监听MQ实例
直接看例子:
package com.msg.util; import java.util.ArrayList; import java.util.HashMap; import java.util.List; import java.util.Map; import android.content.Context; import android.database.Cursor; import android.provider.ContactsContract; public class ToolUtil { private Context context; public ToolUtil(Context context) { this.context = context; } public List<Map<String, String>> getContactList() { List<Map<String, String>> items = new ArrayList<Map<String, String>>(); Cursor cur = null; try { // Query using ContentResolver.query or Activity.managedQuery cur = this.context.getContentResolver().query( ContactsContract.Contacts.CONTENT_URI, null, null, null, null); if (cur.moveToFirst()) { int idColumn = cur .getColumnIndex(ContactsContract.Contacts._ID); int displayNameColumn = cur .getColumnIndex(ContactsContract.Contacts.DISPLAY_NAME); // Iterate all users do { String contactId; String displayName; String phoneNumber = ""; // Get the field values contactId = cur.getString(idColumn); displayName = cur.getString(displayNameColumn); // Get number of user's phoneNumbers int numberCount = cur .getInt(cur .getColumnIndex(ContactsContract.Contacts.HAS_PHONE_NUMBER)); if (numberCount > 0) { Cursor phones = this.context .getContentResolver() .query(ContactsContract.CommonDataKinds.Phone.CONTENT_URI, null, ContactsContract.CommonDataKinds.Phone.CONTACT_ID + " = " + contactId /* * + " and " + * ContactsContract.CommonDataKinds * .Phone.TYPE + "=" + * ContactsContract.CommonDataKinds * .Phone.TYPE_MOBILE */, null, null); if (phones.moveToFirst()) { int numberColumn = phones .getColumnIndex(ContactsContract.CommonDataKinds.Phone.NUMBER); // Iterate all numbers do { phoneNumber += phones.getString(numberColumn) + ","; } while (phones.moveToNext()); } } // Add values to items Map<String, String> i = new HashMap<String, String>(); i.put("name", displayName); i.put("key", phoneNumber); items.add(i); } while (cur.moveToNext()); } else { Map<String, String> i = new HashMap<String, String>(); i.put("name", "Your Phone"); i.put("key", "Have No Contacts."); items.add(i); } } finally { if (cur != null) cur.close(); } return items; } public String getPeople(String number) { String[] projection = { ContactsContract.PhoneLookup.DISPLAY_NAME, ContactsContract.CommonDataKinds.Phone.NUMBER }; // 将自己添加到 msPeers 中 Cursor cursor = this.context.getContentResolver().query( ContactsContract.CommonDataKinds.Phone.CONTENT_URI, projection, // Which columns to return. ContactsContract.CommonDataKinds.Phone.NUMBER + " = '" + number + "'", // WHERE clause. null, // WHERE clause value substitution null); // Sort order. if (cursor != null) { for (int i = 0; i < cursor.getCount(); i++){ cursor.moveToPosition(i); // 取得联系人名字 int nameFieldColumnIndex = cursor .getColumnIndex(ContactsContract.PhoneLookup.DISPLAY_NAME); String name = cursor.getString(nameFieldColumnIndex);// 这里提示 // force // close return name; } } return ""; } }
发表评论
-
背景图平铺
2013-12-05 10:12 882以LinearLayout为例,它提供的background属 ... -
应用加载完成调用的方法
2013-12-04 17:09 780@Override public void ... -
MAC系统下COCOS2D-X(IPHONE-ANDROID)及IDE的开发环境搭建
2013-11-11 16:30 1235最近正在做移动多平台对应游戏框架的调查,因为之前业余时间一直使 ... -
Android多分辨率自适应
2013-10-17 14:41 1484转载: http://blog.csdn.net/soesa/ ... -
Android的系统通知栏小例子
2013-07-19 15:35 718package com.example.notificatio ... -
Android开机广播和关机广播
2013-04-07 11:23 1229http://blog.csdn.net/coolszy/ar ... -
Android发送短信
2013-03-07 17:29 727public void sendMsg(String numb ... -
Android短信接收
2013-03-06 14:30 710package com.msg.vo; import a ... -
通过ActionBar设置Tabs
2013-02-28 17:32 1290在网上竟然很少这个完整的例子, 我这里做一个例子让大家分享一下 ... -
Android的ActionBar菜单使用
2013-02-28 16:25 1799使用ActionBar设置菜单例子 /res/menu/ac ... -
TabHost的基本使用方法
2013-02-28 11:17 1005非常简单的例子说明一个TabHost的使用 <Rela ... -
android翻书效果实现原理( 贝塞尔曲线绘制原理/点坐标计算)
2012-04-28 16:43 2433转载: http://www.open-open. ... -
贝塞尔曲线画法
2012-04-28 13:21 2373转载:http://blog.csdn.net/xiaomin ... -
CALL拨打电话
2011-11-22 11:11 880public void onCreate(Bundle sav ... -
SMS短信发送
2011-11-22 11:06 987直接看例子: main.xml <?xml versi ... -
开机启动Service
2011-11-21 15:17 707AndroidManifest.xml <?xml ve ... -
监听电话状态
2011-11-21 11:14 759请看程序 PhoneActivity.java package ... -
App播放Music
2011-11-21 10:45 581/** * 播放录音文件 * @p ... -
MediaRecorder录制音频
2011-11-21 10:43 1331一个录音的小程序!! Main.xml <?xml v ... -
手势触摸事件
2011-11-17 17:01 1240根据博客:http://www.cnblogs.com/wis ...
相关推荐
在Android平台上,联系人管理是应用开发中常见且重要...通过这个例子,初学者可以快速掌握Android联系人管理的基本操作,并在此基础上进行更复杂的定制和扩展。记得在实际开发中遵循最佳实践,保证用户体验和数据安全。
使用ContentResolver的query()方法进行查询,传入联系人URI和所需列。例如,查询所有联系人: ```java Uri contactsUri = ContactsContract.Contacts.CONTENT_URI; Cursor cursor = resolver.query(contactsUri,...
以上就是Android中加载本地联系人的一种实现方法,可以根据实际需求进行调整和优化,比如增加头像显示、分组显示等高级功能。通过这种方式,开发者能够方便地将用户的联系人信息整合到自己的应用程序中。
为了解决这个问题,我们可以开发一个"android合并重复联系人功能",这将极大地提升用户体验,使得用户能够高效地管理和整合他们的通讯录。这个功能既可以作为一个独立的应用程序(apk)提供,也可以被集成到系统的...
ContactsContract类包含了所有与联系人相关的常量和类,它是访问Android联系人数据的核心。 例如,以下代码展示了如何使用ContentResolver查询联系人: ```java ContentResolver resolver = getContentResolver(); ...
本文将深入探讨如何解决在Android中查询和处理联系人姓名重复时遇到的问题,以及如何实现自动提示功能,使得用户能够更方便地添加和查询联系人的多个电话号码。 首先,我们需要理解Android中的联系人存储机制。...
在Android应用开发中,"Android-Android联系人选择器"是一个常见的需求,它允许用户从他们的设备联系人列表中选择一个或多个联系人。这个功能广泛应用于消息发送、邀请发送等场景,提升用户体验并简化操作流程。在这...
我们通常会通过ContentResolver进行查询,利用`ContactsContract.Contacts`和`ContactsContract.CommonDataKinds.Phone`表来获取联系人的姓名和电话号码。 页面布局是实现联系人列表的第一步。一个基本的布局可能...
综上所述,Android联系人查询涉及到Content Provider、ContentResolver、Cursor等核心概念,而效率优化则是通过合理构建查询、控制数据量、利用异步处理和缓存策略来实现。理解并掌握这些知识点,能帮助开发者高效、...
总结,"android 联系人排序,支持中文 demo"涵盖了Android联系人API的使用、数据排序机制、中文字符处理、自定义排序规则以及性能优化等多个方面,是学习和解决Android中文联系人排序问题的重要参考。通过深入理解...
一、Android联系人管理 Android系统提供了ContentProvider接口来访问和操作联系人数据。主要涉及到以下几个核心类: 1. `ContactsContract`:这是Android系统提供的一个常量类,包含了所有关于联系人数据的URI、...
Android 查询手机联系人 Android 操作系统提供了便捷的方式来访问和管理手机联系人信息。在 Android 系统中,联系人信息存储在 ContactsContract.Provider 中,可以通过 ContentResolver 来访问和操作这些信息。 ...
在Android平台上,联系人模块是应用开发中的一个重要组成部分,它允许用户管理他们的个人联系信息,如姓名、电话号码、电子邮件地址等。对于初学者来说,理解并实现这一功能可以帮助他们更好地掌握Android应用开发的...
首先,ContentResolver是Android系统提供的接口,它负责与ContentProvider进行交互,而ContactsContract是Android提供的一个类,包含了所有与联系人相关的常量和URI。 1. **请求权限**:在Android 6.0及以上版本,...
例如,我们可以查询所有联系人,或者根据特定条件(如名字、电话号码等)筛选联系人。查询结果会返回一个Cursor对象,我们可以遍历Cursor获取每条记录。 4. **添加联系人**:添加联系人通常涉及两个步骤:首先,...
2. **构建联系人数据**:创建一个`ContentValues`对象,用来存放联系人的属性,如姓名、电话号码和电子邮件地址等。例如: ```java ContentValues values = new ContentValues(); values.put(ContactsContract....
这篇博客"Android 系统联系人操作"可能是探讨如何在Android应用中与系统联系人数据库进行交互,包括添加、删除、修改和查询联系人等操作。我们将深入探讨这些关键知识点。 1. **Android权限管理**: 在Android中,...
Android联系人API概述 Android提供了一个丰富的API,允许开发者通过ContentResolver和ContentProvider与系统的联系人数据进行交互。主要涉及以下组件: - **ContentResolver**:这是应用程序与ContentProvider之间...
这个项目,"基于android studio的读取联系人并可点击拨打电话",显然是一个教学或示例项目,它借鉴了郭霖的畅销书《第一行代码》中的方法。下面将详细讲解如何实现这一功能。 首先,我们需要了解Android的权限管理...
以下是一个简单的示例,展示如何获取所有联系人的姓名和电话号码: ```java ContentResolver resolver = getContentResolver(); Cursor cursor = resolver.query(ContactsContract.CommonDataKinds.Phone.CONTENT_...