콘텐츠 공유에 대한 지침
여러 사용자가 Windows 유니버설 앱의 콘텐츠를 공유하거나 공유 계약을 통해 설치된 다른 앱에서 공유 콘텐츠를 수신할 수 있습니다. 앱을 공유 소스, 공유 대상 또는 둘 모두로 등록할 수 있습니다. 앱에 공유 기능을 사용하려면 공유 환경에 대한 진입점을 제공해야 합니다.
공유 프로세스의 자세한 개요를 보려는 경우 공유 추가(XAML) 또는 콘텐츠 공유 및 받기(HTML)를 참조하세요.
예제
다음은 사용자가 공유 대상 목록에서 "Tweet@rama"를 선택할 때 나타나는 공유 플라이아웃입니다.
긴 공유 작업
다음은 긴 공유 작업을 완료하는 공유 플라이아웃의 예입니다. 공유가 실패할 경우 대상 앱에 표시되는 확정되지 않은 진행률 표시줄과 정보용 오류 메시지에 유의하세요. 자세한 내용은 Guidelines for progress controls을 참조하세요.
권장 사항
소스 앱
- 사용자가 원하는 형식으로 콘텐츠를 공유합니다. 예를 들어 사용자가 웹 페이지의 일부를 공유하도록 선택한 경우 전체 웹 페이지에 대한 링크를 공유하지 마세요. 대신 선택한 텍스트를 공유합니다.
- 사용자가 공유 중인 항목을 나타내는 설명을 제공합니다. 예를 들어 사용자가 웹 페이지를 공유 중인 경우 페이지의 URL이 포함된 문장을 추가합니다. 이미지를 공유 중인 경우 이미지에 대한 설명 또는 제목을 포함합니다.
- 사용자가 표시된 앱 콘텐츠의 일부를 선택한 경우 공유 플라이아웃(창)이 닫힌 이후에도 이 선택이 유지됩니다. 그러면 사용자가 선택을 수정하거나 동일한 콘텐츠를 여러 대상과 공유하려는 경우에 유용합니다.
- 다운로드한 로컬 콘텐츠의 복사본을 공유하는 대신 로컬 콘텐츠의 온라인 버전에 대한 링크를 공유하세요. 예를 들어 뉴스 사이트에서 뉴스 앱을 만들고 웹 사이트에도 동일한 기사를 게시한다고 가정합니다. 사용자가 기사를 소셜 네트워킹 사이트와 공유하려는 경우 앱에서는 사용자가 현재 보고 있는 기사의 온라인 버전에 대한 링크를 공유할 수 있습니다.
- 공유를 완료할 수 없는 경우 사용자에게 알립니다. 특정 공유 작업이 실패할 경우 문제와 문제를 해결하는 방법(해당하는 경우)에 대해 설명하는 메시지를 공유 플라이아웃에 표시합니다. DataRequest 개체는 이 경우에 유용한 FailWithDisplayText 메서드를 지원합니다.
- 앱에서 데이터를 복사하는 방법을 지원하는 경우 이 동일한 데이터를 공유하는 방법도 제공해야 합니다.
- 사용자가 공유하려는 콘텐츠에 대한 유용한 정보를 대상 앱에 제공하도록 속성을 설정합니다. 사용 가능한 속성에 대한 자세한 내용은 DataPackage.DataPackagePropertySet를 참조하세요.
대상 앱
- 대상 앱과 기본 앱 간의 모양과 느낌을 동일하게 유지합니다. 대상 앱의 사용자 인터페이스는 기본 앱을 자주 사용하는 사용자에게 친숙한 느낌을 주어야 합니다.
- 내 앱이 특정 데이터 형식의 소스이자 대상일 경우 다른 사용자가 내 앱을 공유할 때마다 기본적으로 공유 대상 목록에 나타납니다. 사용자가 동일한 앱을 사용하여 콘텐츠를 공유할 수 없는 경우 다른 대상 앱을 선택하라는 오류 메시지가 표시됩니다.
- 사용자를 공유 환경 밖으로 이동하는 링크를 제거합니다. 예를 들어 대상 앱에 홈페이지와 같은 앱의 다른 영역을 연결하는 링크가 있는 경우 실수로 공유 환경을 종료하지 않도록 링크를 제거하거나 숨겨야 합니다.
- 미리 보기는 가능한 경우 실제 콘텐츠와 일치해야 합니다. 앱에 사용자가 공유 중인 항목의 미리 보기가 포함되어 있는 경우 미리 보기가 실제로 공유되는 내용과 최대한 일치해야 합니다.
- 사용자 작업을 인식합니다. 공유 창을 닫기 전에 인라인 메시지 등을 통해 시스템이 사용자 작업에 응답하고 있음을 알려 줍니다. 이를 통해 공유가 성공적으로 시작되었는지 확인할 수 있습니다.
관련 항목
개발자용(XAML)
Quickstart: Receiving shared content
개발자용(HTML)