저는 안드로이드 장치에 다운로드 할 수있는 ASP.NET (C#)을 사용하여 vCard를 생성하려고 꽤 오랫동안 노력해 왔습니다.ASP.NET을 사용하여 안드로이드에서 다운로드 할 수있는 vCard를 생성하십시오.
카드를 생성하는 과정은 매우 간단하므로 걱정하지 않아도됩니다. 내가 다운로드 할 수없는 다운로드 자체입니다.
페이지 응답에 vCard를 부착 대한 나의 코드는 다음과 같습니다
public void downloadCard()
{
//generate the vCard text
string vCard = generateCard();
//create the filename the user will download the file as
string filename = HttpUtility.UrlEncode(username + ".vcf", System.Text.Encoding.UTF8);
//get a reference to the response
HttpResponse response = HttpContext.Current.Response;
//clear the response and write our own one.
response.Clear();
response.ContentType = "text/x-vcard";
response.AddHeader("Content-Disposition", "attachment; filename=" + filename + ";");
response.Write(vCard);
response.End();
}
페이지가 소요되는 유일한 매개 변수는 사용자 이름입니다하지만 난 그게 정말 중요하지으로 생성 과정을 보여주는 귀찮게하지 않습니다 이는 web.config 파일의 일부 URL 재 작성 덕분에 RESFUL URL을 통해 수신됩니다. 따라서 example.com/vcard/apbarratt URL은 apbarratt라는 사용자의 vCard를 생성합니다.
GET 요청이 코드를 생산하고 있다는 응답은 다음과 같습니다
200 OK
Date: Wed, 15 Aug 2012 13:49:56 GMT
X-AspNet-Version: 4.0.30319
X-Powered-By: ASP.NET
Content-Disposition: attachment; filename=apbarratt.vcf;
Content-Length: 199
Server: Microsoft-IIS/7.5
Content-Type: text/x-vcard; charset=utf-8
Cache-Control: private
BEGIN:VCARD
VERSION:2.1
N;LANGUAGE=en-us:Andy Barratt
FN:Andy Barratt
TEL;CELL;VOICE:07000000000
URL;WORK:http://example.com
EMAIL;INTERNET:[email protected]
END:VCARD
이 내가 (안 아이폰 OS에서 테스트 한 모든 단일 브라우저에서 완벽하게 작동, 즉에서 해결 된 또 다른 문제입니다 다른 방법), 안드로이드 주식 브라우저를 제외하고. 이러한 브라우저에서 파일 이름이 "알 수 없음"이고 용어가 "실패 함"이거나 사용자 이름이 "apbarratt.vcf"인 다른 장치에서 다운로드가 실패하고 변경되지 않는 "진행 중"이라는 용어가 실패합니다.
오페라 모바일/미니와 같은 다른 브라우저에서는 문제가 없습니다.
나는 그들이
... 어쨌든 ... 정말 무딘 나는 모든 일에 대한 꿈을 데 유사한 문제에 많은 블로그를 읽고, 생각할 수있는 가능한 모든 일을하고 시도했습니다 잘하면 신선한 눈이 나를 도울 수있을 것입니다. 어쩌면 누군가가 전에 이것을 해 놓았고 어떤 도움을 기대하면서 코드를 공유 할 수있었습니다.
앤디
관련성이 있습니다. http://stackoverflow.com/questions/4381766/how-to-get-a-vcard-vcf-file-into-android-contacts-from-website. –