android,新手出了点小问题
2017-01-02 15:40
429 查看
public class Utils {
private static final String TAG = "UTILS";
/**
* 输出Cursor结果集
*
* @param cursor
*/
public static void printCursor(Cursor cursor) {
if (cursor != null && cursor.getCount() > 0) {
int columnCount;
String columnName;
String columnValue; //列值
while (cursor.moveToNext()) {
// 获得行中所有的列的总数
columnCount = cursor.getColumnCount();
for (int i = 0; i < columnCount; i++) {
columnName = cursor.getColumnName(i);
columnValue = cursor.getString(i);
Log.i(TAG, "当前是第" + cursor.getPosition() + "行: " + columnName + " = " + columnValue);
}
}
cursor.moveToPosition(-1); //结束循环
// cursor.close();
}
}
//根据号码取得联系人的名字
public static String getContactName(ContentResolver contentResolver, String address) {
Uri uri = new Uri.withAppendedPath(ContactsContract.PhoneLookup.CONTENT_FILTER_URI, Uri.encode(address));
Cursor cursor = contentResolver.query(uri, new String[]{Phone.DISPLAY_NAME}, null, null, null);
if (cursor != null && cursor.moveToFirst()) {
String cotractName = cursor.getString(0);
cursor.close();
return cotractName;
}
return null;
}
//给定uri找到查询人的id
public static int getContractID(ContentResolver contentResolver, Uri uri) {
Cursor cursor = contentResolver.query(uri, new String[]{"has_phone_number", "_id"}, null, null, null);
if (cursor != null && cursor.moveToFirst()) {
int hasPhoneNumber = cursor.getInt(0);
if (hasPhoneNumber > 0) {
int contactID = cursor.getInt(1);
cursor.close();
return contactID;
}
}
return -1; //-1表示返回空
}
//根据联系人id取得联系人的手机号
public static String getContactAddress(ContentResolver contentResolver,int contact_id){
String selection ="contact_id=?";
String[] sectionArgs = {String.valueOf(contact_id)};
Cursor cursor =contentResolver.query(Phone.CONTENT_URI,new String[]{Phone.NUMBER},selection,sectionArgs,null);
if(cursor!=null &&cursor.moveToFirst()){
String address =cursor.getString(0);
cursor.close();
return address;
}
return null;
}
private static final String TAG = "UTILS";
/**
* 输出Cursor结果集
*
* @param cursor
*/
public static void printCursor(Cursor cursor) {
if (cursor != null && cursor.getCount() > 0) {
int columnCount;
String columnName;
String columnValue; //列值
while (cursor.moveToNext()) {
// 获得行中所有的列的总数
columnCount = cursor.getColumnCount();
for (int i = 0; i < columnCount; i++) {
columnName = cursor.getColumnName(i);
columnValue = cursor.getString(i);
Log.i(TAG, "当前是第" + cursor.getPosition() + "行: " + columnName + " = " + columnValue);
}
}
cursor.moveToPosition(-1); //结束循环
// cursor.close();
}
}
//根据号码取得联系人的名字
public static String getContactName(ContentResolver contentResolver, String address) {
Uri uri = new Uri.withAppendedPath(ContactsContract.PhoneLookup.CONTENT_FILTER_URI, Uri.encode(address));
Cursor cursor = contentResolver.query(uri, new String[]{Phone.DISPLAY_NAME}, null, null, null);
if (cursor != null && cursor.moveToFirst()) {
String cotractName = cursor.getString(0);
cursor.close();
return cotractName;
}
return null;
}
//给定uri找到查询人的id
public static int getContractID(ContentResolver contentResolver, Uri uri) {
Cursor cursor = contentResolver.query(uri, new String[]{"has_phone_number", "_id"}, null, null, null);
if (cursor != null && cursor.moveToFirst()) {
int hasPhoneNumber = cursor.getInt(0);
if (hasPhoneNumber > 0) {
int contactID = cursor.getInt(1);
cursor.close();
return contactID;
}
}
return -1; //-1表示返回空
}
//根据联系人id取得联系人的手机号
public static String getContactAddress(ContentResolver contentResolver,int contact_id){
String selection ="contact_id=?";
String[] sectionArgs = {String.valueOf(contact_id)};
Cursor cursor =contentResolver.query(Phone.CONTENT_URI,new String[]{Phone.NUMBER},selection,sectionArgs,null);
if(cursor!=null &&cursor.moveToFirst()){
String address =cursor.getString(0);
cursor.close();
return address;
}
return null;
}
相关文章推荐
- Android发短信的应用—新手遇到的最常见问题
- 新手上路(一):基于android平台的投票应用的开发(三)之问题整理
- Android开发,新手问题集合
- [Android新手区] android里面EditTex多行输入及输入置顶问题
- Android Studio 学习笔记-新手入门-(2)导入项目遇到的问题
- Android新手之旅(2) 新手问题
- 教新手一步步解决:Plugin is too old, please update to a more recent version, or set ANDROID_DAILY_OVERRIDE environment variable to和更新gradle问题
- 新手学Android【四】问题一<运行app时的空指针错误>
- 新手学Android【四】问题一<running android lint has encountered a problem>
- android(eclipse)新手常见问题总结(一)
- 新手上路(一):基于android平台的投票应用的开发(三)之问题整理
- Android开发新手会遇到的几个问题
- 新手自学android遇到的各种问题
- Android开发新手问题
- 新手问题. 在Android中, 有人能JDBC直接连接到SQL SERVER取数据吗?
- Android新手之旅(15) Win7下配置遇到的问题
- Android 新手,第一个问题
- android新手关于左右滑动的问题,布局把<android.support.v4.view.ViewPager/><ImageView/> 放在上面就不行了。
- 初涉Android开发遇到的一些新手小问题
- Android开发新手看过来,这里有很多能解决你的问题