欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

淺析Android手機衛(wèi)士讀取聯(lián)系人

 更新時間:2016年04月14日 11:22:44   作者:陶士涵  
這篇文章主要介紹了淺析Android手機衛(wèi)士讀取聯(lián)系人的相關(guān)內(nèi)容,通過getContentResolver()方法獲取獲取ContentResolver內(nèi)容解析器對象,對android手機衛(wèi)士讀取聯(lián)系人相關(guān)知識感興趣的朋友參考下吧

推薦閱讀:

淺析Android手機衛(wèi)士sim卡綁定

深入淺析Android手機衛(wèi)士保存密碼時進行md5加密

詳解Android 手機衛(wèi)士設(shè)置向?qū)ы撁?/a>

淺析Android手機衛(wèi)士關(guān)閉自動更新

淺析Android手機衛(wèi)士自定義控件的屬性

獲取ContentResolver內(nèi)容解析器對象,通過getContentResolver()方法

調(diào)用ContentResolver對象的query()方法,得到raw_contacts表里面的數(shù)據(jù),得到Cursor對象

參數(shù):Uri對象,字段String數(shù)組

獲取Uri對象,通過Uri.parse(“content://com.android.contacts/raw_contacts”)方法,

while循環(huán)Cursor對象,條件是Cursor對象moveToNext()方法為真

調(diào)用Cursor對象的getString()方法,參數(shù)是索引

判斷不為null,查詢另一張表

調(diào)用ContentResolver對象的query()方法,得到data表里面的數(shù)據(jù),得到Cursor對象

參數(shù):Uri對象,字段String[]數(shù)組(data1,mimetype),條件String,條件值String[]數(shù)組(contact_id)

Uri對象是Uri.parse(“content://com.android.contacts/data”)

循環(huán)和上面一樣

姓名對應(yīng)的類型是vnd.android.cursor.item/name

電話對應(yīng)的類型是vnd.android.cursor.item/phone_v2

需要權(quán)限,android.permisssion.READ_CONTACTS

調(diào)用ListView對象的setAdapter()方法,分配數(shù)據(jù)到視圖,參數(shù)是Adapter對象

通過new SimpleAdapter()來獲得Adapter對象

參數(shù):上下文,數(shù)據(jù)集合,布局資源,字段String[]數(shù)組,控件int[] id數(shù)組

package com.qingguow.mobilesafe.utils;
import java.util.ArrayList;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
import android.content.ContentResolver;
import android.content.Context;
import android.database.Cursor;
import android.net.Uri;
/**
* 讀取手機聯(lián)系人
* @author taoshihan
*
*/
public class PhoneContactsUtil {
public static List<Map<String,String>> getContacts(Context context){
ContentResolver resolver=context.getContentResolver();
Uri uri=Uri.parse("content://com.android.contacts/raw_contacts");
Uri dataUri=Uri.parse("content://com.android.contacts/data");
List<Map<String,String>> contacts=new ArrayList<Map<String,String>>();
//循環(huán)聯(lián)系人表
Cursor cursor=resolver.query(uri, new String[]{"contact_id"}, null, null, null);
while(cursor.moveToNext()){
String id=cursor.getString(cursor.getColumnIndex("contact_id"));
if(id!=null){
Map<String,String> contact=new HashMap<String,String>();
//查找數(shù)據(jù)表
Cursor dataCursor=resolver.query(dataUri, new String[]{"data1","mimetype"},"raw_contact_id=?", new String[]{id}, null);
while(dataCursor.moveToNext()){
String data1=dataCursor.getString(dataCursor.getColumnIndex("data1"));
String mimetype=dataCursor.getString(dataCursor.getColumnIndex("mimetype")); 
System.out.println("data1:"+data1+",mimetype:"+mimetype);
if(mimetype.equals("vnd.android.cursor.item/name")){
contact.put("name", data1);
}else if(mimetype.equals("vnd.android.cursor.item/phone_v2")){
contact.put("phone", data1);
}
}
contacts.add(contact);
dataCursor.close();
}
}
cursor.close();
return contacts;
}
}

以上內(nèi)容是小編給大家介紹的android 手機衛(wèi)士讀取聯(lián)系人的相關(guān)介紹,希望對大家有所幫助!

相關(guān)文章

  • Android中asset文件夾與raw文件夾的區(qū)別深入解析

    Android中asset文件夾與raw文件夾的區(qū)別深入解析

    本篇文章是對Android中的asset文件夾與raw文件夾區(qū)別進行了詳細的分析介紹,需要的朋友參考下
    2013-06-06
  • Android編程中@id和@+id的區(qū)別分析

    Android編程中@id和@+id的區(qū)別分析

    這篇文章主要介紹了Android編程中@id和@+id的區(qū)別,較為詳細的分析講述了Android中資源引入的原理及使用@id和@+id引入資源的具體用法,總結(jié)了二者的區(qū)別,需要的朋友可以參考下
    2016-01-01
  • 詳解Android App中的AsyncTask異步任務(wù)執(zhí)行方式

    詳解Android App中的AsyncTask異步任務(wù)執(zhí)行方式

    這篇文章主要介紹了Android App中的AsyncTask異步任務(wù)執(zhí)行方式,文中舉了一個打開網(wǎng)絡(luò)圖片的例子幫助大家直觀理解,需要的朋友可以參考下
    2016-04-04
  • Android自定義view實現(xiàn)圓形、圓角和橢圓圖片(BitmapShader圖形渲染)

    Android自定義view實現(xiàn)圓形、圓角和橢圓圖片(BitmapShader圖形渲染)

    這篇文章運用實例代碼介紹如何在Android中自定義view,使用BitmapShader圖形渲染方法來實現(xiàn)圓形、圓角和橢圓的繪制,有需要的可以參考借鑒。
    2016-08-08
  • 你該知道的Gradle配置知識總結(jié)

    你該知道的Gradle配置知識總結(jié)

    這篇文章主要給大家介紹了關(guān)于Gradle配置的相關(guān)資料,文中通過示例代碼介紹的非常詳細,對各位Android開發(fā)者們具有一定的參考學(xué)習(xí)價值,需要的朋友可以參考學(xué)習(xí),下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧。
    2017-10-10
  • Android開發(fā)之ProgressDialog進度對話框用法示例

    Android開發(fā)之ProgressDialog進度對話框用法示例

    這篇文章主要介紹了Android開發(fā)之ProgressDialog進度對話框用法,簡單介紹了ProgressDialog進度對話框常見函數(shù)功能,并結(jié)合實例形式分析了ProgressDialog組件創(chuàng)建及使用進度對話框相關(guān)操作技巧,需要的朋友可以參考下
    2019-03-03
  • 關(guān)于Android中點擊通知欄的通知啟動Activity問題解決

    關(guān)于Android中點擊通知欄的通知啟動Activity問題解決

    這篇文章主要介紹了關(guān)于解決Android中點擊通知欄的通知啟動Activity問題的相關(guān)資料,文中介紹的非常詳細,對大家具有一定的參考價值,需要的朋友們下面來一起看看吧。
    2017-03-03
  • Android自定義View制作儀表盤界面

    Android自定義View制作儀表盤界面

    這篇文章主要介紹了Android自定義View制作儀表盤界面的相關(guān)資料,首先需要自定義儀表盤的屬性,在構(gòu)造方法種獲取自定義屬性,本文介紹的非常詳細,具有參考借鑒價值,需要的朋友可以參考下
    2016-11-11
  • Android?JetPack組件的支持庫Databinding詳解

    Android?JetPack組件的支持庫Databinding詳解

    DataBinding是Google發(fā)布的一個數(shù)據(jù)綁定框架,它能夠讓開發(fā)者減少重復(fù)性非常高的代碼,如findViewById這樣的操作。其核心優(yōu)勢是解決了數(shù)據(jù)分解映射到各個view的問題,在MVVM框架中,實現(xiàn)的View和Viewmode的雙向數(shù)據(jù)綁定
    2022-08-08
  • Android 靜默安裝和卸載的方法

    Android 靜默安裝和卸載的方法

    本篇文章主要介紹了Android 靜默安裝和卸載的方法,小編覺得挺不錯的,現(xiàn)在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2017-09-09

最新評論