Как предоставить общий доступ к тексту (HTML)

[ Эта статья адресована разработчикам приложений среды выполнения Windows для Windows 8.x и Windows Phone 8.x. При разработке приложений для Windows 10 см. раздел последняя документация]

Общий доступ к тексту является одним из самых простых, но важных методов общего доступа к содержимому. Рекомендуется, чтобы приложение поддерживало общий доступ к тексту:

  • Если вы хотите, чтобы содержимое было доступно большому количеству конечных приложений.
  • В качестве вспомогательного ресурса при предоставлении общего доступа к ссылкам или HTML.

Что необходимо знать

Технологии

Необходимые условия

  • Вам должна быть знакома среда Visual Studio и связанные с ней шаблоны.
  • Вам необходимо знать JavaScript.

Инструкции

Этап 1: Настройка приложения в качестве источника данных

Добавьте обработчик событий DataRequested, который будет запускаться, когда пользователь хочет вызвать функцию общего доступа. В приложении Магазина Windows это выполняется автоматически, когда пользователь нажимает чудо-кнопку "Поделиться". При разработке для Windows Phone нет встроенной чудо-кнопки "Поделиться", поэтому вам понадобится добавить элемент управления, которого пользователь может коснуться, чтобы запустить обработчик.

var dataTransferManager = Windows.ApplicationModel.DataTransfer.DataTransferManager.getForCurrentView();
dataTransferManager.addEventListener("datarequested", shareTextHandler);

Остальные шаги выполняются для реализации функции shareTextHandler.

Этап 2: Получение объекта DataRequest

Когда происходит событие datarequested, ваше приложение получает объект DataRequest. Этот объект содержит DataPackage, который вы можете использовать для предоставления содержимого, которым желает поделиться пользователь.

var request = e.request;

Этап 3: Настройка свойств заголовка и описания

request.data.properties.title = "Share Text Example";
request.data.properties.description = "Demonstrates how to share.";

Этап 4: Добавление текста в экземпляр DataPackage

Чтобы добавить текст, используйте метод setText.

request.data.setText("Hello World!");

Полный пример

Ниже приведен пример функции, которая задает текст для общего доступа. Для получения более полных сведений см. образец из коллекции кода.

function shareTextHandler(e) {
    var request = e.request;
    request.data.properties.title = "Share Text Example";
    request.data.properties.description = "Demonstrates how to share.";
    request.data.setText("Hello World!");
}

app.onactivated = function (args) {
    if (args.detail.kind === activation.ActivationKind.launch) {
        if (args.detail.previousExecutionState !== activation.ApplicationExecutionState.terminated) {
            // This app is newly launched. Register the app as share source.
            var dataTransferManager = Windows.ApplicationModel.DataTransfer.DataTransferManager.getForCurrentView();
            dataTransferManager.addEventListener("datarequested", shareTextHandler);
        } else {
            // TODO: This app was reactivated from suspension.
            // Restore the app state here.
        }
        args.setPromise(WinJS.UI.processAll());
    }
};

Связанные разделы

Пример исходного приложения при общем доступе к содержимому

Общий доступ и обмен данными

Общий доступ к файлам

Как предоставить общий доступ к HTML

Общий доступ к ссылке

Краткое руководство: общий доступ к содержимому

DataPackage

Windows.ApplicationModel.DataTransfer

Windows.ApplicationModel.DataTransfer.Share