Android 联系人数据库介绍以及对联系人的基本 *** 作

Android 联系人数据库介绍以及对联系人的基本 *** 作,第1张

一、 联系人数据库

 联系人的数据库文件的位置

/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-permission android:name="android.permission.READ_CONTACTS"

/>

<uses-permission android:name="android.permission.WRITE_CONTACTS"

/>

我们在打开一个新的activity的时候 startActivity(intent)的 intent里其实可以附加上你需要传递的参数 把你的数据放在intent里,再在打开的activity里从intent里取出来就行了

Android使用的数据库是sqlite,sqlite只能有一个自动增长字段。

暂时数据库本身没办法使用多个自动增长。

如果仅仅是为了使数据不重复,建议你使用主键。或者在程序中使用UUID来生成一个50年不重复的字符串。

希望我的回答对你有所帮助。


欢迎分享,转载请注明来源:内存溢出

原文地址: https://outofmemory.cn/sjk/6689867.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-03-26
下一篇 2023-03-26

发表评论

登录后才能评论

评论列表(0条)

保存