自己制作app获取联系人相册

随着移动互联网的快速发展,手机已经成为了我们日常生活中必不可少的工具之一。而移动应用(APP)的开发和使用也日益增多。一些应用需要获取用户的联系人和相册等隐私信息,这对于一些不知情的用户来说是非常危险的。那么,如果自己制作一个获取联系人和相册的APP,该如何实现呢?下面就为大家介绍一下相关的原理和具体实现步骤。

一、获取联系人

在Android系统中,可以通过ContentProvider实现对联系人信息的访问。ContentProvider类是Android系统提供的一种标准的数据共享方式,所有的数据都通过一个uri进行访问,并返回一个数据流。而联系人信息的uri为ContactsContract.Contacts.CONTENT_URI。我们可以直接通过以下 ContentResolver 对象的方法来获取联系人信息:

```java

ContentResolver cResolver = getContentResolver();

Cursor cursor = cResolver.query(

ContactsContract.Contacts.CONTENT_URI, null, null, null, null);

```

查询得到的cursor是一个数据流,其中包含了联系人的各种信息。其中,ContactsContract.CommonDataKinds.Phone类表示联系人的电话信息,ContactsContract.Contacts类表示联系人的基本信息。获取电话信息和基本信息的代码如下:

```java

if (cursor.getCount() > 0) {

while (cursor.moveToNext()) {

String id = cursor.getString(

cursor.getColumnIndex(ContactsContract.Contacts._ID));

String name = cursor.getString(

cursor.getColumnIndex(ContactsContract.Contacts.DISPLAY_NAME));

if (Integer.parseInt(cursor.getString(

cursor.getColumnIndex(ContactsContract.Contacts.HAS_PHONE_NUMBER))) > 0) {

Cursor pCursor = cResolver.query(

ContactsContract.CommonDataKinds.Phone.CONTENT_URI,

null,

ContactsContract.CommonDataKinds.Phone.CONTACT_ID + " = ?",

new String[]{id},

null

);

if (pCursor.moveToNext()) {

String phoneNum = pCursor.getString(

pCursor.getColumnIndex(ContactsContract.CommonDataKinds.Phone.NUMBER));

Log.e("AAA", "id:" + id + ",name:" + name + ",phone:" + phoneNum);

}

pCursor.close();

}

}

}

cursor.close();

```

这样就可以获取到联系人的所有基本信息和电话信息。

二、获取相册

Android系统中提供了一种叫做MediaStore.Images.Media的接口,可以方便地访问手机的相册信息。我们可以通过以下代码获取到相册中所有的图片信息:

```java

ContentResolver cResolver = getContentResolver();

Cursor cursor = cResolver.query(

MediaStore.Images.Media.EXTERNAL_CONTENT_URI,

null,

null,

null,

MediaStore.Images.Media.DATE_MODIFIED

);

```

这里的EXTERNAL_CONTENT_URI表示的是SD卡上的图片,如果要获取内部存储的图片信息,可以将EXTERNAL_CONTENT_URI改为INTERNAL_CONTENT_URI。获取到Cursor后,我们可以通过遍历Cursor获取到所有的图片信息:

```java

if (cursor != null && cursor.getCount() != 0) {

while (cursor.moveToNext()) {

String title = cursor.getString(

cursor.getColumnIndex(MediaStore.Images.Media.TITLE));

String path = cursor.getString(

cursor.getColumnIndex(MediaStore.Images.Media.DATA));

long size = cursor.getLong(

cursor.getColumnIndex(MediaStore.Images.Media.SIZE));

Log.e("AAA", "title:" + title + ",path:" + path + ",size:" + size);

}

}

```

至此,我们已经成功地获取到了手机中的联系人和相册信息。但是在实际使用中,我们要充分考虑到用户隐私等方面的问题,尽量减小对用户隐私的侵犯。


相关知识:
自建商城app哪个好用
在当今移动互联网的时代,自建商城App渐渐成为了商家们提高品牌核心竞争力乃至获得更多利润的必需品。在这种趋势下,市场上自建商城App也越来越多,但是哪个才是最好用的呢?本文将为大家简单介绍一下,App自建平台的原理、如何选择比较好的自建平台以及一些值得注意
2023-06-05
自学开发手机app
现在,越来越多的人对于开发手机app感兴趣,因为app可以改变如今我们生活的方方面面,而且也可以被用来解决各种问题,提高效率,节省时间。app开发需要掌握一些编程语言和技术,但并不需要过高的技术水平,只要有兴趣、有耐心,就可以自学开发手机app。下面将为大
2023-06-05
自学app开发需要学多久
自学 app 开发需要学习的内容包括移动端操作系统、编程语言、开发工具等多个方面。同样,需要花费的时间也与个人的实际情况有关。下面将详细介绍一下自学 app 开发所需的内容和时间估算。1. 移动端操作系统的了解和掌握Android 和 iOS 是目前市场上
2023-06-05
自己制作的app怎么发布
发布一款自己制作的app是每一个开发者的梦想,这不仅可以让自己的项目得到更多用户的认可和使用,还可以为自己带来商业收益。那么,怎么发布自己的app呢?下面将为大家详细介绍。一、准备工作在发布自己的app之前,需要做一些准备工作。首先,需要申请一个开发者账号
2023-06-05
自己制作手机系统app
制作手机系统app并不是一件简单的事情,需要掌握一定的技术和知识。下面介绍一下大致的原理和制作步骤。首先需要了解的是,手机系统app属于操作系统的一部分,它们负责控制和管理手机硬件和软件资源,提供各种功能和服务,例如通讯、浏览器、联系人、日历、照相机、音乐
2023-06-05
想自己做产后恢复用什么app
在产后恢复的过程中,适当的运动和营养摄入是非常重要的。有很多的手机应用程序可以帮助产后妈妈们实现恢复目标,其中 “多美妈妈” app 可以说是不错的选择。1. 多美妈妈多美妈妈是一款可帮助产后妈妈进行健康管理的手机应用程序。该 app 前身为“妇女健康管理
2023-05-31
想自己做一个app
如果你想制作一个app,建议你先了解app和移动应用程序开发的基本知识。App是指应用程序,是一种由开发人员设计和编写的软件,可在移动设备上运行。移动应用程序开发是指开发人员设计和编写应用程序,在移动设备上实现特定功能。在开发应用程序时,你需要掌握以下技能
2023-05-31
天津自助洗车app开发
在现代城市中,汽车已经成为人们生活中必不可少的一部分,汽车洗护也成为人们生活中重要的事情之一。自助洗车已经成为人们的首选洗车方式,它既方便又节约,也更符合现代人们快节奏的生活方式。在这种情况下,天津自助洗车app的开发就成为了现代城市中非常重要的一个项目。
2023-05-31
外包开发app自己运维招人
随着互联网的普及和移动终端设备的普及,越来越多的企业和个人需要开发自己的移动应用程序,以满足用户的需求。然而,对于大多数创业公司和小型企业来说,拥有一支专业的移动应用程序开发团队往往是不可行的,那么借助外包公司来解决这一难题就成为了很多企业的选择。招人开发
2023-05-31
说唱app哪个好用自己做伴奏
说唱是当下很受年轻人喜欢的音乐类型,而说唱app也随之增多。对于想要自己做伴奏的人来说,选用一个合适的说唱app至关重要。本文将介绍几个口碑较好、操作简便的说唱app,并详细介绍说唱app自己做伴奏的原理和方法。一、说唱app1. 小宇宙说唱小宇宙说唱是一
2023-05-31
可以自己制作二次元动漫的app
在二次元动漫的流行趋势下,有很多人梦想制作自己的二次元动漫 APP,能够满足二次元动漫爱好者的需求。制作动漫 APP 的过程中需要具备一定的技术能力和专业知识。以下是关于如何制作二次元动漫 app 的原理和详细介绍。一、梳理需求首先,需要确定自己的 APP
2023-05-30
安卓app自做
随着手机普及率的不断提高,App成为了一个人们生活中必不可少的部分。我们每天都在使用各种各样的App来表达自己的兴趣爱好、学习、工作或玩耍。那么,如果你也想自己动手制作一个安卓App,本文将详细介绍App制作的原理和步骤。一、制作App的原理在制作App之
2023-05-30
©2015-2021 自建app开发平台 www.appbyme.cn 蜀ICP备17005078号-1