- Android vcard使用示例,生成vcf文件
我们备份手机联系人时,导出到SD卡时,会在SD卡中生成一个vcf文件,用于保存联系人姓名,手机号码。
vCard 规范容许公开交换个人数据交换 (Personal Data Interchange PDI)信息,在传统纸质商业名片可找到这些信息。规范定义电子名片(或叫vCard)的格式。
而在Android上使用vcard就要借助第三方包:
将它复制进工程,然后Add jar即可,实现代码很简单,如下:
if (Environment.getExternalStorageState().equals(Environment.MEDIA_MOUNTED)) //判断存储卡是否存在 { OutputStreamWriter writer; File file = new File(Environment.getExternalStorageDirectory(),"example.vcf"); //得到存储卡的根路径,将example.vcf写入到根目录下 try { writer = new OutputStreamWriter(new FileOutputStream(file), "UTF-8"); //create a contact VCardComposer composer = new VCardComposer(); ContactStruct contact1 = new ContactStruct(); contact1.name ="John" ; contact1.company = "The Company"; contact1.addPhone(Contacts.Phones.TYPE_MOBILE, "15651865008", null, true); //create vCard representation String vcardString; vcardString = composer.createVCard(contact1, VCardComposer.VERSION_VCARD30_INT); //write vCard to the output stream writer.write(vcardString); // writer.write("/n"); //add empty lines between contacts // repeat for other contacts // ... writer.close(); Toast.makeText(c, "已成功导入SD卡中!", Toast.LENGTH_SHORT).show(); } catch (UnsupportedEncodingException e) { // TODO Auto-generated catch block e.printStackTrace(); } catch (FileNotFoundException e) { // TODO Auto-generated catch block e.printStackTrace(); } catch (VCardException e) { // TODO Auto-generated catch block e.printStackTrace(); } catch (IOException e) { // TODO Auto-generated catch block e.printStackTrace(); } } else{ Toast.makeText(c, "写入失败,SD卡不存在!", Toast.LENGTH_SHORT).show(); }
由于要对存储卡做读写操作,所以要加读写权限:
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE"></uses-permission>
这样联系人就备份成功了,用系统自带的联系人软件就可以实现导入。这里只是个简单的写数据的例子,读取vcf文件中的数据的例子我已经和一起压缩上传,以供各位同学下载,下载地址:http://download.csdn.net/detail/pzhtpf/4564761
相关文章
- 07-21使用javah生成.h文件, 出现无法访问android.app,Activity的错误的解决
- 07-21命令行下使用javah命令生成.h文件,出现“错误: 无法访问android.app.Activity 找不到android.app.Activity的类文件”的解决方法
- 07-21android studio 使用ndk编译.C文件生成so文件
- 07-21Android 自定义View及其在布局文件中的使用示例(三):结合Android 4.4.2_r1源码分析onMeasure过程
- 07-21Android 使用XmlSerializer生成xml文件
- 07-21【Android Studio安装部署系列】二十五、Android studio使用NDK生成so文件和arr文件
- 07-21Android 自定义View及其在布局文件中的使用示例(二)
- 07-21Android 自动编译、打包生成apk文件 3 - 使用SDK Ant方式
- 07-21Android 自动编译、打包生成apk文件 2 - 使用原生Ant方式
- 07-21[转]使用ant让Android自动打包的build.xml,自动生成签名的apk文件(支持android4.0以上的版本)