如何导入或从插入.vcf文件接触,机器人编程?机器人、文件、vcf

2023-09-07 08:34:37 作者:倾一世温柔丶只为红颜一笑

创建的.vcf 使用下面code在Android中的所有联系人的文件。

I create .vcf file of all contacts in Android using below code.

public static void getVCF() 
{
    final String vfile = "POContactsRestore.vcf";
    Cursor phones = mContext.getContentResolver().query(ContactsContract.CommonDataKinds.Phone.CONTENT_URI, null,
                    null, null, null);
    phones.moveToFirst();
    for(int i =0;i<phones.getCount();i++)
    {
         String lookupKey = phones.getString(phones.getColumnIndex(ContactsContract.Contacts.LOOKUP_KEY));
         Uri uri = Uri.withAppendedPath(ContactsContract.Contacts.CONTENT_VCARD_URI, lookupKey);
         AssetFileDescriptor fd;
         try 
         {
             fd = mContext.getContentResolver().openAssetFileDescriptor(uri, "r");
             FileInputStream fis = fd.createInputStream();
             byte[] buf = new byte[(int) fd.getDeclaredLength()];
             fis.read(buf);
             String VCard = new String(buf);
             String path = Environment.getExternalStorageDirectory().toString() + File.separator + vfile;
             FileOutputStream mFileOutputStream = new FileOutputStream(path, true);
                        mFileOutputStream.write(VCard.toString().getBytes());           
             phones.moveToNext();                           
             Log.d("Vcard",  VCard);
         } 
         catch (Exception e1) 
         {
              // TODO Auto-generated catch block
              e1.printStackTrace();
         }
    }
}

如何添加/恢复从的.vcf 联系人在Android的编程文件?

How to add / restore contacts from .vcf file programatically in Android?

我要恢复所有联系人形成的.vcf 使用code文件中的Andr​​oid。 如何做到这一点?

I want to restore all contacts form that .vcf file in to Android using code. How to do this?

推荐答案

其实我也很想做同样的一个经过长期的研究我终于得到了解决。

Actually I also want to do the same and a after a long research finally i got the solution.

下面是一张code还原:

Here is the piece of code to restore:

Intent intent = new Intent(Intent.ACTION_VIEW);
intent.setDataAndType(Uri.fromFile(new File(storage_path+vfile)),"text/x-vcard"); //storage path is path of your vcf file and vFile is name of that file.
startActivity(intent);

享受!