栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > Java

十三、AOSP-通讯录导入

Java 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

十三、AOSP-通讯录导入

.

一、vcf文件制作二、adb导入方法三、删除导入的提示

一、vcf文件制作
BEGIN:VCARD
VERSION:2.1
N:cc;ff;;;
FN:ff cc
TEL;CELL:1-375-667-8808
END:VCARD
二、adb导入方法

将制作好的vcf文件“contacts.vcf”保存到sd的Music目录下运行如下adb命令

adb shell am start --user 0 -t "text/x-vcard" -d "file:///storage/emulated/0/Music/contacts.vcf" -a android.intent.action.VIEW com.android.contacts
三、删除导入的提示

调用adb命令后,我们发现会弹出一个确认框,点击确认后才会开始导入确认框提示“import contacts from vCard?”这时候我们到源码路径“packages/apps/Contacts/res/values/strings.xml”下找到这个提示

    
    import contacts from vCard?

然后到“packages/apps/Contacts/src”下搜索“import”,我们发现“importVCardDialogFragment.java”中调用了“import_from_vcf_file_/confirm/iation_message”
接下来,我们到“packages/apps/Contacts/src/com/android/contacts/vcard/importVCardActivity.java“中,发现了这个导入窗的弹出调用

我们可以看到isCallerSelf是判断是否是系统自己的package调用这时候我们就找到了不需要确认框就能直接导入的方法了

        if (isCallerSelf(this)) {
            startimport(sourceUri, sourceDisplayName);
        } else {
            importVCardDialogFragment.show(this, sourceUri, sourceDisplayName);
        }

修改源码:else中也直接开始导入即可

        if (isCallerSelf(this)) {
            startimport(sourceUri, sourceDisplayName);
        } else {
            //zjp update
            startimport(sourceUri, sourceDisplayName);
            //importVCardDialogFragment.show(this, sourceUri, sourceDisplayName);
        }
转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/762420.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号