㈠ 安卓系統如何刪掉重復聯系人
用安卓手機的朋友一定遇到過這種情況,新買回來的手機插上SIM卡以後導入了一次聯系人,綁定Google帳號的時候又同步了重復的聯系,想要手動調整非常麻煩。今天小編推薦給大家一款可以輕松刪除重復聯系人的APP——《Duplicate
Contacts》。
打開《Duplicate
Contacts》以後它會首先向用戶推薦兩款APP,注意要點擊「Decline」跳過,不然的話會直接跳到Google
Play。然後它會自動開始搜索重復的聯系,然後會直接顯示重復的數量。
搜索之後《Duplicate
Contacts》會直接將重復的聯系人用復選框選中,可以直接點擊頂部的「Delete
selected」刪除。還可以通過點擊旁邊的「Show
plicate」來查看具體的重復聯系人,如果想改變排序也可以通過點擊「Sort
by
name」來實現。
㈡ 安卓手機怎麼把聯系人轉到另一台手機上
您好,打開藍牙進行傳輸,具體步驟如下:
1、打開手機中的設置界面,找到「藍牙」功能。
2、然後將藍牙功能打開,並選擇「掃描藍牙設備」同時將「可被附近藍牙設備檢測到」這項功能打開,
3、之後通過藍牙連接將兩台手機互相連接上,
4、然後打開通訊錄,
5、打開右上角的通訊錄菜單,在菜單中找「發送聯系人」選項,
6、之後在彈出的窗口中選擇「通過藍牙發送聯系人」即可。
7、最後會有一個選擇發送的藍牙設備的選項。選擇需要發送到的藍牙設備即可。
㈢ QQ通訊錄(android)如何合並重復聯系人
只有當聯系人完全一致是才會自動合並,如果不一致將會新建聯系人。最好是通過網頁版的通訊錄刪除後,再設置一致的聯系人姓名進行同步。
㈣ Android 聯系人資料庫介紹以及對聯系人的基本操作
您好,很高興為您解答。
一、 聯系人資料庫
聯系人的資料庫文件的位置
/data/data/com.android.providers.contacts/databases.contacts2.db
資料庫中重要的幾張表
1、contacts表
該表保存了所有的手機測聯系人,每個聯系人佔一行,該表保存了聯系人的
ContactID、聯系次數、最後一次聯系的時間、是否含有號碼、是否被添加
到收藏夾等信息。
2、raw_contacts表
該表保存了所有創建過的手機測聯系人,每個聯系人佔一行,表裡有一列標
識該聯系人是否被刪除,該表保存了兩個ID:RawContactID和ContactID,
從而將contacts表和raw_contacts表聯系起來。該表保存了聯系人的
RawContactID、ContactID、聯系次數、最後一次聯系的時間、是否被添
加到收藏夾、顯示的名字、用於排序的漢語拼音等信息。
3、 mimetypes
該表定義了所有的MimeTypeID,即聯系人的各個欄位的唯一標志。
4、data表
該表保存了所有創建過的手機測聯系人的所有信息,每個欄位佔一行 ,該表
保存了兩個ID:MimeTypeID和RawContactID,從而將data表和
raw_contacts表聯系起來。
聯系人的所有信息保存在列data1至data15中,各列中保存的內容根據
MimeTypeID的不同而不同。如保存號碼(MimeTypeID=5)的那行數據中,
data1列保存號碼,data2列保存號碼類型(手機號碼/家庭號碼/工作號碼等)。
二、對聯系人的基本操作
這里的基本操作只是針對手機測的聯系人,(U)SIM側的聯系人的操
作後續介紹。
如果對聯系人的基本操作,我們必須得到許可。
方法就是在AndroidManifest.xml文件中配置如下許可權:
<uses-permissionandroid:name="android.permission.READ_CONTACTS"
/>
<uses-permissionandroid:name="android.permission.WRITE_CONTACTS"
/>
讀取聯系人
分為以下步驟:
1、先讀取contacts表,獲取ContactsID;
2、再在raw_contacts表中根據ContactsID獲取RawContactsID;
3、然後就可以在data表中根據RawContactsID獲取該聯系人的各數據了。
//獲取用來操作數據的類的對象,對聯系人的基本操作都是使用這個對象
ContentResolvercr=getContentResolver();
//查詢contacts表的所有記錄
Cursorcur=cr.query(ContactsContract.Contacts.CONTENT_URI,null,null,
null,null);
//如果記錄不為空
if(cur.getCount()>0)
{
//游標初始指向查詢結果的第一條記錄的上方,執行moveToNext函數會判斷
//下一條記錄是否存在,如果存在,指向下一條記錄。否則,返回false。
while(cur.moveToNext())
{
StringrawContactsId="";
Stringid=
cur.getString(cur.getColumnIndex(ContactsContract.Contacts._ID));
str+="ID:"+id+" ";二、對聯系人的基本操作(4)
//讀取rawContactsId
CursorrawContactsIdCur=cr.query(RawContacts.CONTENT_URI,
null,
RawContacts.CONTACT_ID+"=?",
newString[]{id},null);
//該查詢結果一般只返回一條記錄,所以我們直接讓游標指向第一條記錄
if(rawContactsIdCur.moveToFirst())
{
//讀取第一條記錄的RawContacts._ID列的值
rawContactsId=
rawContactsIdCur.getString(rawContactsIdCur.getColumnIndex(
RawContacts._ID));
}
rawContactsIdCur.close();
//讀取號碼
If(Integer.parseInt(cur.getString(cur.getColumnIndex(ContactsContract.
Contacts.HAS_PHONE_NUMBER)))>0)
{
//根據查詢RAW_CONTACT_ID查詢該聯系人的號碼
CursorPhoneCur=
cr.query(ContactsContract.CommonDataKinds.Phone.CONTENT_URI,
null,
ContactsContract.CommonDataKinds.Phone.RAW_CONTACT_ID+"=
?",
newString[]{rawContactsId},null);
//上面的ContactsContract.CommonDataKinds.Phone.CONTENT_URI
//可以用下面的phoneUri代替
//UriphoneUri=Uri.parse("content://com.android.contacts/data/phones");二、對聯系人的基本操作(6)
//一個聯系人可能有多個號碼,需要遍歷
while(PhoneCur.moveToNext())
{
//號獲取碼
Stringnumber=
PhoneCur.getString(PhoneCur.getColumnIndex(
ContactsContract.CommonDataKinds.Phone.NUMBER));
//獲取號碼類型
StringnumberType=
PhoneCur.getString(PhoneCur.getColumnIndex(
ContactsContract.CommonDataKinds.Phone.TYPE));
}
PhoneCur.close();
新建聯系人
新建聯系人時, 根據contacts、raw_ contacts兩張表中ID的使用情況,自動
生成ContactID和RawContactID。
Android源碼新建重復姓名的聯系人的ContactID是不重復的,所以會重復顯
示。
用下面的代碼新建聯系人,如果多次新建的聯系人的姓名是一樣的,生成的
ContactID也會重復,RawContactID不會重復,我們在讀取聯系人的時候可
以獲取所有同姓名聯系人的號碼等信息,在顯示聯系人的時候,重復姓名的
聯系人的所有欄位信息都會合並起來顯示為一個聯系人。
ContentValuesvalues=newContentValues();
UrirawContactUri=
getContentResolver().insert(RawContacts.CONTENT_URI,values);
longrawContactId=ContentUris.parseId(rawContactUri);二、對聯系人的基本操作(8)
//向data表插入姓名數據
if(name!="")
{
values.clear();
values.put(Data.RAW_CONTACT_ID,rawContactId);
values.put(Data.MIMETYPE,
StructuredName.CONTENT_ITEM_TYPE);
values.put(StructuredName.GIVEN_NAME,name);
getContentResolver().insert(ContactsContract.Data.CONTENT_URI,
values);
}
//向data表插入電話數據
if(phoneNum!="")
{
values.clear();
values.put(Data.RAW_CONTACT_ID,rawContactId);
values.put(Data.MIMETYPE,Phone.CONTENT_ITEM_TYPE);
values.put(Phone.NUMBER,phoneNum);
values.put(Phone.TYPE,Phone.TYPE_MOBILE);
getContentResolver().insert(ContactsContract.Data.CONTENT_URI,
values);
}
刪除聯系人
我們只需要將raw_contacts表中指定RawContactID的
行刪除,其他表中與之關聯的數據都會自動刪除。
publicvoiddelete(longrawContactId)
{
getContentResolver().delete(ContentUris.withAppendedId(RawContac
ts.CONTENT_URI,rawContactId),null,null);
}
更新聯系人
聯系人的所有信息都是保存在data表中,所以要更新聯系人,我們只需要根
據RawContactID和MIMETYPE修改data表中的內容。
ContentValuesvalues=newContentValues();
values.put(Phone.NUMBER,「123");
values.put(Phone.TYPE,Phone.TYPE_MOBILE);
StringWhere=ContactsContract.Data.RAW_CONTACT_ID+"=?AND
"+ContactsContract.Data.MIMETYPE+"=?";
String[]WhereParams=newString[]{"5",Phone.CONTENT_ITEM_TYPE};
getContentResolver().update(ContactsContract.Data.CONTENT_URI,
values,Where,WhereParams);
如若滿意,請點擊右側【採納答案】,如若還有問題,請點擊【追問】
希望我的回答對您有所幫助,望採納!
~O(∩_∩)O~
㈤ 安卓手機通訊錄刪了一個聯系人然後同名的也一起被刪除了,怎麼解決
1、撥號頁面輸入「*#*#4636#*#*」打開手機「測試」界面。
㈥ 安卓手機聯系人和sim聯系人不一樣,導入後聯系人重復,如何顯示最多的聯系人且不重復。
在通訊錄裡面設置,顯示改為手機電話本顯示或者google同步賬號現在,需要顯示手機上面已有的還是google伺服器上面的,打勾即可,默認兩者都是打勾的,所以你會顯示重復
那你就關閉同步或者刪除手機儲存的電話本,刪改前請備份
㈦ 安卓手機怎麼把聯系人轉到另一台手機上
打開藍牙進行傳輸,具體步驟如下:
1、打開手機中的設置界面,找到「藍牙」功能。如圖所示。
㈧ 怎麼把安卓手機上的聯系人和簡訊導入到Iphone上
可以用第三方工具,如360雲盤。
1. 手機上下載安裝360雲盤。
2. 注冊/登錄360雲盤。
3. 登錄成功後,點擊左上角頭像。
4. 在「關於我」界面上選擇「手機備份」,進入後分別選擇「簡訊備份」和「通信錄備份」。
5. 點擊「備份到雲端」,就可以將手機里的電話號碼、簡訊導入(備份)到360雲盤了。
6. 同樣,在IPhone手機上下載安裝360雲盤,用相同的賬號和密碼登錄後,選擇「恢復到手機」,將360雲盤備份的手機號碼、簡訊合並到iPhone手機中。
7. 注意:必須授權360雲盤讀取通信錄、簡訊許可權,否則操作會失敗。
㈨ 安卓手機怎麼批量刪除聯系人 手機知道
步驟
1、打開手機找到手機通話並點擊