如何查詢手機資料庫聯絡人
在android中聯絡歷史儲存在contact2.db中的calls資料表中,我們可以利用contentprovider查詢calls表中的資料,calls表的uri:calllog.calls.content_uri;
calls表中的列所對應的常量:
_id ----> calllog.calls._id
photo_id ----> calllog.calls.cached_photo_id/"photo_id"
type ----> calllog.calls.type
number ----> calllog.calls.number;
time ----> calllog.calls.date;
name ----> calllog.calls.cached_name;
完整的查詢聯絡人詳細資訊的**:
public static listgetallcontacts(context context), null, null, null);
while(cursor.movetonext()),
data.raw_contact_id + " = ?",
new string,
null);
while(c.movetonext())else if(mimetype.equals("vnd.android.cursor.item/organization"))else if(mimetype.equals("vnd.android.cursor.item/phone_v2"))else if(mimetype.equals("vnd.android.cursor.item/name"))else if(mimetype.equals("vnd.android.cursor.item/postal-address_v2"))
}c.close();
contacts.add(contact);
}cursor.close();
return contacts;
}在這裡我們需要知道的是calls表中的photo_id列資料存在乙個小問題,當對方撥打**進來時,如果沒有接聽,則對方的頭像id值是不會記錄在calls表中的。此時calllogfragment中顯示該條聯絡歷史的時候就不會有頭像出現。所以,需要利用**號碼去其它表中查詢該使用者的頭像id。
利用**號碼查詢頭像id最簡單的方式就是利用phone_lookup表的contentprovider來進行查詢。
Android碎片的簡單應用
碎片是一種可以嵌入到活動當中的ui片段,讓程式更合理的運用大螢幕空間,它擁有自己的布局和生命週期,比較常見的應用是在新聞標題列表當中,在平板中螢幕很大,如果只顯示乙個標題活動,很浪費空間,這時不如設計乙個標題碎片,乙個內容碎片,在活動中引入這兩個碎片,會使螢幕空間看起來更舒適合理。建立碎片所展示的布...
乙個簡單實用的Android除錯應用技巧
如有侵犯,請來信oiken qq.com 在應用開發中,我們常常會進行日誌列印或者debug除錯,以此來分析執行時的一些資訊,便於發現bug和問題。android studio的debug功能很好用,但是有時候有些情況下,就顯得不是那麼快捷和便利。比如雖然上面的情況可以通過android studi...
Opencv簡單應用(一)
一 讀取顯示 include include include include using namespace cv int main int argc,char argv 二 對進行腐蝕操作 即用中暗色部分腐蝕掉高亮部分。include include include include using n...