android,新手出了点小问题

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;
    }

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值