标签: vcf-vcard

CNContact保存联系人时,联系人图片不会发送

我写了一个代码来保存与图像的联系.我用CNContact类来做.它成功保存了联系人.

该联系人在iOS的默认联系人应用程序中正确显示缩略图.但我的问题是,当我使用iOS的默认联系人应用程序通过短信或电子邮件分享该联系人时,该图像不会加到vCard中.

任何人都可以向我指导我做错了什么吗?

以下是我用来保存联系人的方法.它在Swift中.

func addContact(withData: ContactModel, andPicture picture: NSData?) -> Bool {
    if(checkForPermission() != true) {
        print("No permission")
        return false
    }

    let contact = convertToCNMutableContact(withData)
    contact.imageData = picture
    let saveRequest = CNSaveRequest()
    saveRequest.addContact(contact, toContainerWithIdentifier: nil)
    do {
        try contactStore.executeSaveRequest(saveRequest)
        return true
    } catch  {
        print("Couldn't save contact")
        return false
    }
}
Run Code Online (Sandbox Code Playgroud)

vcf-vcard objective-c ios swift cncontact

3
推荐指数
1
解决办法
859
查看次数

地址簿数据库架构

我需要为用户存储联系信息.我希望将此数据作为hCard显示在页面上,并可作为vCard下载.我也希望能够通过电话号码,电子邮件等搜索数据库.

您认为存储此数据的最佳方式是什么?由于用户可能有多个地址等,因此完全规范化将是一团糟.我正在考虑使用XML,但我不熟悉查询XML数据库字段.我仍然可以通过联系信息搜索用户吗?

我正在使用SQL Server 2005,如果这很重要的话.

schema microformats normalizing vcf-vcard hcard

2
推荐指数
1
解决办法
4156
查看次数

如何通过互联网以编程方式将名片消息发送到手机

是否可以以名片格式从互联网发送消息.?我需要向手机发送联系人,以便收件人可以轻松保存联系人.

使用短信api s我们可以发送短信,但如何发送名片文件?

在我的项目场景中,我有10个人的电话号码,我需要将这些号码以名片格式发送到另一部手机.

有关如何实施的任何想法?

api mobile vcf-vcard

2
推荐指数
1
解决办法
5263
查看次数

如何使用Android原生API以Vcard格式获取Android联系人

我正在尝试使用Android Api阅读VCard格式的Android设备联系人.我找到了一个相同的链接: Android contatcs vcard API

并尝试编写相同的代码,但它无法正常工作,因为我无法获取lookupkey:

ContentResolver cr = getContentResolver();
Cursor cur = cr.query(ContactsContract.Contacts.CONTENT_URI,
                null, null, null, null);  
int num = cur.getCount();  // I get 2 , as there are two contacts

String lookupKey = cur.getString(cur.getColumnIndex(Contacts.LOOKUP_KEY));
// The above line gives error : android.database.CursorIndexOutOfBoundsException:
//  Index -1 requested, with a size of 2

Uri uri = Uri.withAppendedPath(ContactsContract.Contacts.CONTENT_VCARD_URI, lookupKey);
AssetFileDescriptor fd = resolver.openAssetFileDescriptor(uri, "r");
FileInputStream fis = fd.createInputStream();
    byte[] b = new byte[(int)fd.getDeclaredLength()];
fis.read(b);
String vCard = new String(b);
sb.append(vCard); …
Run Code Online (Sandbox Code Playgroud)

android vcf-vcard

2
推荐指数
1
解决办法
7122
查看次数

如何将二维码的电子名片保存到联系人

如果qr code包含v卡,我需要保存到联系人。我试图使用库来执行操作,但无法读取v卡信息,不知道该使用哪种方法。我见过很多其他类似的帖子,但不幸的是,这些帖子无法挽救我。我zxing library用来阅读二维码。

android vcf-vcard qr-code zxing

2
推荐指数
1
解决办法
3644
查看次数

使用 Objective-C 中的 Contacts.Framework 将所有联系人导出到一个 .vcf 文件中

使用 I AddressBook.framework 我曾经从所有联系人创建 Contacts.vcf 并将其保存在文档目录中。这是我曾经使用的代码:

ABAddressBookRef addressBook1 = ABAddressBookCreate();
NSArray *arrayOfAllPeople = (__bridge_transfer NSArray *) ABAddressBookCopyArrayOfAllPeople(addressBook1);
long cnt = (unsigned long)[arrayOfAllPeople count];
if (cnt==0) {

    ABAddressBookRequestAccessWithCompletion(addressBook1, nil);

}

if(ABAddressBookGetAuthorizationStatus() == kABAuthorizationStatusAuthorized)
{
    ABAddressBookRef addressBook2 = ABAddressBookCreate();


    CFArrayRef contacts = ABAddressBookCopyArrayOfAllPeople(addressBook2);
    CFDataRef vcards = (CFDataRef)ABPersonCreateVCardRepresentationWithPeople(contacts);


    NSString *vcardString = [[NSString alloc] initWithData:(__bridge NSData *)vcards encoding:NSUTF8StringEncoding];
    NSArray *paths = NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES);
    NSString *folderPath = [paths objectAtIndex:0];
    NSString *filePath = [folderPath stringByAppendingPathComponent:@"Contacts.vcf"];
    [vcardString writeToFile:filePath atomically:YES encoding:NSUTF8StringEncoding error:nil];
    CFRelease(addressBook2); }
Run Code Online (Sandbox Code Playgroud)

如何使用 Contacts.framework 创建包含所有设备联系人的 …

vcf-vcard objective-c contacts addressbook

2
推荐指数
1
解决办法
1387
查看次数

动态创建 vCard

我想知道创建 vCard 的最佳方法是什么。我不需要将其存储在我的服务器上,只需在用户想要下载时生成它即可。下面的代码可以工作,但对我来说似乎很笨拙,有没有更好的方法?

<?php
function raf_create_vcard(){
$format_name = utf8_encode($name);
$format_email = utf8_encode($email);
$format_tel = utf8_encode($tel);
$format_fax = utf8_encode($fax);
$format_www = utf8_encode($www);
$format_address = utf8_encode($address);

return 'BEGIN%3AVCARD%0D%0AVERSION%3A4.0%0D%0AN%3A%3B'.$format_name.'%3B%3B%3B%0D%0AFN%3A'.$format_name.'%0D%0AEMAIL%3A'.$format_email.'%0D%0AORG%3A'.$format_name.'%0D%0ATEL%3A'.$format_tel.'%0D%0ATEL%3Btype%3DFAX%3A'.$format_fax.'%0D%0AURL%3Btype%3Dpref%3A'.$format_www.'%0D%0AADR%3A%3B'.$format_address.'%3B%3B%3B%3B%3BSpain%0D%0AEND%3AVCARD';   
}
?>
Run Code Online (Sandbox Code Playgroud)

生成链接:

<a href="data:text/plain;charset=UTF-8,<?php echo raf_create_vcard(); ?>" download="contact.vcf">Download</a>
Run Code Online (Sandbox Code Playgroud)

php vcf-vcard

2
推荐指数
1
解决办法
3万
查看次数

'System.IO.MemoryStream'不包含'for'的定义?

我在这里遇到一些问题.

Error1'System.IO.MemoryStream'不包含'CopyTo'的定义

我的代码:

// Error occurs here (CopyTo) (For Framework 4.0)
ms.CopyTo(actualAttachment);    
actualAttachment.Position = 0;  

//Change CopyTo to WriteTo For Framework 2.0
ms.WriteTo(actualAttachment);   
actualAttachment.Position = 0;  
Run Code Online (Sandbox Code Playgroud)

我不得不重新输入我的整个代码以确保所有内容都进入流中,因为我在发送文件后删除文件时遇到了一些问题.但现在我收到了这个错误.

所以基本上它现在不应该保存任何东西.

我根本没注意到我使用的是什么框架.我每天使用4种类型的框架,有时候会让我感到困惑.

c# asp.net vcf-vcard email-attachments

1
推荐指数
1
解决办法
4447
查看次数

使用联系人应用程序直接打开.vcf vCard文件

我正在尝试以编程方式启动联系人应用程序以导入包含大量联系人的大型.vcf文件.以下代码几乎完美无缺.

String vcfMimeType = MimeTypeMap.getSingleton().getMimeTypeFromExtension("vcf");
Intent openVcfIntent = new Intent(Intent.ACTION_VIEW);
openVcfIntent.setDataAndType(Uri.fromFile(savedVCardFile), vcfMimeType);
startActivity(openVcfIntent);
Run Code Online (Sandbox Code Playgroud)

唯一的问题是Android显示应用程序选择器对话框,不仅显示联系人应用程序,还显示Dropbox(或任何其他处理vCard文件的应用程序).我想阻止此行为并使用联系人应用程序直接打开文件,以便自动启动导入.

我在StackOverflow上尝试了几件没有运气的东西,比如设置:

openVcfIntent.setComponent(new ComponentName("com.android.contacts", "com.android.contacts.DialtactsContactsEntryActivity"));
openVcfIntent.setAction("android.intent.action.MAIN");                                                                       
openVcfIntent.addCategory("android.intent.category.LAUNCHER");                                                               
openVcfIntent.addCategory("android.intent.category.DEFAULT");                                                                
Run Code Online (Sandbox Code Playgroud)

关于如何处理这个问题的任何想法?

android vcf-vcard import-contacts contactscontract android-contacts

1
推荐指数
1
解决办法
3705
查看次数

我可以在 vcf.gz 文件上使用 tabix 吗?

作为初学者,我可能有一个愚蠢的问题,但我有几个不同个人的 VCF 文件,它们被压缩 (.vcf.gz)。我想使用 vcf-merge 将这些文件合并为一个包含所有个人的 VCF 文件。

但是,这需要使用 bgzip 实际压缩文件并使用 tabix 进行索引。有谁知道我是否可以从 .vcf.gz 文件转到 tabix 索引和 bgzip 文件而不先解压缩它(它需要大量存储空间,文件非常大)。

谢谢!

indexing merge gzip vcf-vcard

1
推荐指数
1
解决办法
3171
查看次数

如何使用swift导入和导出VCard文件

我是swift的新手.我在从iPhone导出联系人时遇到问题,并将其转换为.Vcf文件,用于将文件上传到Web服务器.此外,我想从Web服务器导入.Vcf文件并转换为iPhone联系人的模式.有谁能帮助我达到预期的效果?

xcode vcf-vcard contacts ios swift4

0
推荐指数
1
解决办法
611
查看次数