zoukankan      html  css  js  c++  java
  • 获取联系人名称及全部电话的实例

    CODE:

    String[] projection = new String[]{
                                        People._ID,
                                        People.NAME
                        };
                        
    Uri peopleUri = People.CONTENT_URI;
    Log.d( TAG, "peopleUri: " + peopleUri );
    Cursor peopleCursor = managedQuery( peopleUri, projection, null, null, People.DEFAULT_SORT_ORDER );
                        
    if( peopleCursor == null ){
        Log.e( TAG, "peopleCursor is null");
        return false;
    }
                        
    if( peopleCursor.moveToFirst()){
                                
        boolean isAfterLastPeople = peopleCursor.isAfterLast();
        while( !isAfterLastPeople ){
            String name = peopleCursor.getString(peopleCursor.getColumnIndexOrThrow( People.NAME ));
            Log.d( TAG, "name: " + name );
                                        
            Long personId = peopleCursor.getLong( peopleCursor.getColumnIndexOrThrow(People._ID) );
            Uri personUri = ContentUris.withAppendedId(peopleUri, personId );
            Uri phoneUri  = Uri.withAppendedPath( personUri, People.Phones.CONTENT_DIRECTORY );
            Log.d( TAG, "phoneUri: " + phoneUri );
                                        
            Cursor phoneCursor = managedQuery( phoneUri, null, null, null, People.Phones.DEFAULT_SORT_ORDER );
            if( phoneCursor == null ){
                Log.e( TAG, "phoneCursor is null");
                return false;
            }
                
            if( phoneCursor.moveToFirst()){
                boolean isAfterLastPhone = phoneCursor.isAfterLast();
               while( !isAfterLastPhone ){
                  String number  = phoneCursor.getString( phoneCursor.getColumnIndexOrThrow( PhonesColumns.NUMBER));
                  String type    = phoneCursor.getString( phoneCursor.getColumnIndexOrThrow( PhonesColumns.TYPE ));
                                                    
                  Log.d( TAG, "number:" + number );
                  Log.d( TAG, "type:" + type );
                                                
                  phoneCursor.moveToNext();
                  isAfterLastPhone = phoneCursor.isAfterLast();
            }
        }
                                        
        peopleCursor.moveToNext();
        isAfterLastPeople = peopleCursor.isAfterLast();
    }

  • 相关阅读:
    新东方总裁俞敏洪—度过有意义的生命
    [导入]【翻译】WF从入门到精通(第九章):逻辑流活动
    [导入]【翻译】WF从入门到精通(第十一章):并行活动
    [导入]【翻译】WF从入门到精通(第五章):workflow跟踪
    收集的连接
    [导入]【翻译】WF从入门到精通(第二章):workflow运行时
    重温SQL——行转列,列转行 3333
    转载] 重新整理高手的win2003+asp+php+mysql+zend+phpmyadmin服务器环境
    [导入]【翻译】WF从入门到精通(第十二章):策略和规则
    (转)Windows 批处理实现 定时打开IE 延时一段时间后 关闭IE
  • 原文地址:https://www.cnblogs.com/xyzlmn/p/3168263.html
Copyright © 2011-2022 走看看