文章导读
大家好,我是陆砚码。最近在工作中遇到了很多关于Android设备信息处理的问题,比如获取设备信息、处理短信、通讯录和通话记录等。今天就来跟大家聊聊Android中的contentResolver,这个强大的工具如何帮助我们轻松处理这些数据。
正文部分
首先,我们先来了解一下Build和getSystemService()这两个常用的工具。
Build是用来获取系统相关配置的,比如设备的型号、品牌等信息。而getSystemService()则可以获取到可变的设备信息,比如SIM卡信息、传感器数据、摄像头信息等。
接下来,我们重点聊聊contentResolver。
contentResolver是Android中用于数据提供者交互的重要类,它可以让我们以安全和有效的方式处理数据,比如获取短信、通讯录和通话记录等。
获取通话记录
val contentResolver = contentResolver
val projection = arrayOf(
CallLog.Calls.NUMBER,
CallLog.Calls.DATE,
CallLog.Calls.DURATION,
CallLog.Calls.TYPE,
CallLog.Calls.CACHED_NAME
)
val limit = 2000
val totalCalls = getCallLogCount()
val queryLimit = if (totalCalls <= limit) totalCalls else limit
val cursor: Cursor? = contentResolver.query(
CallLog.Calls.CONTENT_URI,
projection,
null,
null,
