Uso compartido e intercambio de datos (HTML)

[ Este artículo está destinado a desarrolladores de Windows 8.x y Windows Phone 8.x que escriben aplicaciones de Windows en tiempo de ejecución. Si estás desarrollando para Windows 10, consulta la documentación más reciente

Aquí describimos las distintas maneras en que las aplicaciones pueden compartir e intercambiar datos.

Hoy en día, los usuarios esperan poder usar la tecnología para conectarse y compartir contenido con otras personas. Tanto si un usuario quiere compartir un vínculo con su red social, copiar una imagen en un informe o cargar un archivo al almacenamiento en la nube, las aplicaciones de hoy necesitan garantizar que los datos que usan estén disponibles para que los usuarios los compartan e intercambien.

Existen varios métodos para que las aplicaciones intercambien datos con otras aplicaciones. Uno de estos métodos, el contrato de Compartir, es nuevo y es necesario explicarlo para que puedas usarlo de manera eficaz. Otro método, el Portapapeles, es algo que la mayoría de los programadores conocen (independientemente de la plataforma para la que escriben código). Aún así, para usar el Portapapeles, actualmente necesitas tener en cuenta no solo el contenido, sino también la UI para copiar y pegar. Esta regla se aplica, en particular, si tu aplicación usa el toque como la manera principal de obtener entradas del usuario. Y el último método, guardar, ya se conoce hace bastante tiempo, pero no se había usado de este modo hasta ahora.

Hemos reunido información acerca de los distintos métodos para compartir e intercambiar datos a fin de ayudarte a decidir qué opciones son más convenientes para tu aplicación y para los usuarios. Para ver estas opciones en acción, no dudes en visitar nuestra galería de código y consultar las siguientes muestras:

Si ya sabes qué método quieres usar y solamente necesitas una ayuda para empezar, estos temas de inicio rápido seguramente te serán de utilidad:

Acceso a Compartir

El contrato para contenido compartido es una forma mediante la cual los usuarios pueden intercambiar datos rápidamente entre aplicaciones. Por ejemplo, es posible que un usuario quiera compartir una página web con sus amigos mediante una aplicación de red social, o guardar un vínculo en una aplicación de bloc de notas para consultarlo más adelante. Si tu aplicación tiene escenarios para recibir contenido que el usuario puede completar rápidamente en el contexto de otra aplicación, deberías utilizar un contrato para contenido compartido. El contenido común de uno de estos escenarios puede ser una página web o un grupo de fotos.

Nota  

El Share charm está disponible para el usuario en todo momento y le permite acceder de forma rápida y fácil a todas las aplicaciones que pueden recibir contenido compartido.

Nota  

El Charms bar no existe en Windows Phone 8.1, de modo que debes incluir la opción de compartir mediante programación. Puede estar disponible en todo momento como parte de la barra de la aplicación o bien estar asociada a un control concreto de una página en particular.

El contrato para contenido compartido tiene dos partes: el origen, que comparte los datos, y el destino, que los recibe. Para obtener más información acerca de cómo agregar recursos compartidos a tu aplicación, te recomendamos que empieces con Adición de recursos compartidos. Allí obtendrás más información acerca de cómo compartir trabajos y cómo empezar. También puedes echar un vistazo a estos dos códigos de ejemplo completos: Muestra de una aplicación de origen de contenido compartido y Muestra de una aplicación de destino de contenido compartido.

Para más información sobre cómo participar en el contrato para contenido compartido, consulta Recepción de contenido compartido.

Tocar y enviar

Existe otra característica de uso compartido denominada Tocar y enviar. La opción Tocar y enviar se incluye automáticamente en las aplicaciones que funcionan como orígenes de recursos compartidos. Usa la transmisión de datos en proximidad (NFC) para compartir datos entre usuarios de aplicaciones. En especial, Tocar y enviar resulta ideal para compartir vínculos y archivos con un amigo cercano. Tocar y enviar solo está disponible en dispositivos compatibles con NFC y la tecnología de proximidad.

Nota  

Tocar y enviar aparece automáticamente en el acceso a Dispositivos cuando una aplicación tiene algo para compartir, de forma que el usuario tenga fácil acceso a ello con un simple gesto de toque o clic con el mouse.

Nota  

El Charms bar no existe en Windows Phone 8.1, de modo que debes incluir la opción Tocar y enviar mediante programación. Puede estar disponible en todo momento como parte de la barra de la aplicación o bien estar asociada a un control concreto de una página en particular.

Obtén más información sobre proximidad y pulsación.

Copiar y pegar

Copiar y pegar es la forma clásica de intercambiar datos entre aplicaciones o dentro de una aplicación. Prácticamente todas las aplicaciones admiten operaciones de copiar y pegar hasta cierto punto, dado que se trata de un tipo de acciones bastante conocido que los usuarios esperan encontrar como parte de su experiencia en línea. En un principio, las acciones de copiar y pegar parecen muy similares a la acción de compartir, por lo tanto, es muy tentador querer intercambiarlas. Sin embargo, los buenos desarrolladores reconocen que son características diferentes y proporcionan experiencias de usuario muy distintas.

Nota  

Una ventaja que tiene el Portapapeles con respecto al uso compartido es que es el único método que permite transferir datos desde las aplicaciones de la Tienda Windows al escritorio y viceversa. Hay que tener en cuenta también el modo en que el usuario accede a los comandos copiar y pegar. En un entorno de mouse y teclado, probablemente las teclas clásicas de método abreviado sean suficientes. Sin embargo, si el usuario trabaja desde una tableta, esos métodos abreviados no están disponibles. En su lugar, considera la posibilidad de usar la barra de la aplicación, un menú contextual u otro control para mostrar los comandos copiar y pegar. Para más información, echa un vistazo a nuestras Directrices y lista de comprobación de comandos del Portapapeles o el Código de ejemplo completo de la aplicación Portapapeles.

Recepción de archivos mediante guardar

Permitir que otras aplicaciones guarden archivos en tu aplicación es otra manera en la que los usuarios pueden intercambiar datos entre dos aplicaciones. Por ejemplo, estás trabajando en una propuesta usando Microsoft Word y quieres ponerla a disposición de tus compañeros. Al guardar el archivo, puedes elegir Microsoft OneDrive como ubicación para guardarlo. No necesitas hacer un seguimiento del archivo porque, al guardarlo en OneDrive, ya has informado a OneDrive de que debe hacer un seguimiento del archivo por ti.

Para recibir los archivos que se guardan en tu aplicación, es necesario participar en el contrato del Selector de guardar archivo. Las aplicaciones que participan en este contrato se hospedan en el selector de archivos disponible en aplicaciones que proporcionan un punto de entrada para guardar archivos. Piensa en participar en este contrato del Selector de guardar archivo, si los usuarios esperan que tu aplicación sea una ubicación típica para guardar un archivo y si a menudo quieren especificar un nombre de archivo, tipo de archivo y ubicación. Si estás listo para participar en el contrato del Selector de archivos para abrir, agregar el contrato del Selector de guardar archivo es una extensión natural de lo que el usuario ya espera de tu aplicación. Para más información sobre cómo participar en el contrato del Selector de guardar archivo, consulta Inicio rápido: Acceder a archivos mediante selectores de archivos o echa un vistazo al código de ejemplo completo.

¿Qué opciones de uso compartido e intercambio de datos debes admitir?

Permitir que otras aplicaciones usen tu aplicación como ubicación para guardar archivos es una buena opción cuando el usuario trabaja con archivos y carpetas. El procedimiento es menos intuitivo cuando se trata de conjuntos más pequeños de datos, como una dirección URL o una selección de texto. En esos casos, el contrato para contenido compartido o los comandos copiar y pegar son las mejores opciones. Dicho esto, hay muchas situaciones en las que resulta conveniente admitir el acceso a Compartir y la función guardar. Por ejemplo, piensa en un usuario que quiere almacenar un archivo mediante un servicio de almacenamiento en la nube, como OneDrive. En este caso, tanto el contrato para contenido compartido como la función guardar son opciones válidas. Finalmente, debes considerar la manera en que el usuario interactúa con tu aplicación y admitir los contratos y las características que se adecuan a las expectativas del usuario y ofrecen la mejor experiencia general.