如何通过adb shell导出Android联系人生成可恢复备份文件
屏幕损坏的Android设备通过ADB导出联系人备份操作指南
操作前提:设备此前已对当前连接的电脑开放过USB调试授权,连接电脑后执行adb devices可正常识别到设备序列号。
可用操作方法
方法1:ADB原生备份(无需root,适配绝大多数官方系统)
- 电脑端命令行执行以下指令,直接生成联系人专属备份文件:
adb backup -f contacts_backup.ab com.android.providers.contacts
说明:若执行后命令行无报错卡住,等待10-30秒执行完成,当前命令运行目录下会生成
contacts_backup.ab备份文件。部分定制系统的联系人存储包名存在差异,可先执行adb shell pm list packages | grep contact查询对应包名,替换命令里的包名参数即可。如果设备弹出备份确认弹窗但你无法操作屏幕,可换用下面的第二种方法。- 恢复到备用机:将备用机连接电脑并授权调试,执行以下指令即可自动恢复所有联系人:
adb restore contacts_backup.ab
- 电脑端命令行执行以下指令,直接生成联系人专属备份文件:
方法2:导出数据库转通用VCF格式(全机型兼容,高版本系统需root)
- 依次执行以下命令,将联系人数据库文件拉取到电脑本地:
adb shell cp /data/data/com.android.providers.contacts/databases/contacts2.db /sdcard/ exit adb pull /sdcard/contacts2.db ./注意:Android 11及以上版本访问data分区需要root权限,进入shell后先执行
su获取权限再执行cp复制命令即可。- 本地使用SQLite可视化工具打开拉取到的
contacts2.db文件,直接导出为通用vCard(.vcf)格式联系人文件。该格式是所有手机通用的联系人备份格式,将VCF文件传输到备用机存储中,打开备用机联系人App选择「从本地存储导入」,选中VCF文件即可完成全部联系人恢复。
内容的提问来源于stack exchange,提问作者Sharan Shetty
相关产品推荐
相关产品推荐

