Declaraciones de funcionalidades de aplicación

Declaraciones de funcionalidades de las aplicaciones

[ 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

Si tu aplicación necesita acceso mediante programación a recursos del usuario como Imágenes, o a dispositivos como una cámara, debes declarar la funcionalidad apropiada. Solicitarás acceso declarando funcionalidades en el manifiesto del paquete de tu aplicación. Puedes declarar las funcionalidades generales usando el Diseñador de manifiestos en Microsoft Visual Studio o puedes agregarlas manualmente — consulta Cómo especificar funcionalidades en un manifiesto del paquete. Es importante saber que cuando los clientes compren tu aplicación en la Tienda, se les notificarán todas las funcionalidades que la aplicación declara. Por lo tanto, no uses funcionalidades que la aplicación no necesite.

Este artículo tiene funcionalidades que están separadas en cuatro categorías que se describen a continuación.

  • Funcionalidades de uso general que se aplican a la mayoría de escenarios de las aplicaciones.

  • Funcionalidades de dispositivo que permiten a tu aplicación acceder a los periféricos y dispositivos internos.

  • Funcionalidades de uso especial que requieren una cuenta de empresa especial para enviarlas a la Tienda para usarlas. Para obtener más información sobre las cuentas de empresa, consulta Tipos de cuenta, ubicaciones y precios.

Nota  En este tema no se aplica a Windows Phone. Para obtener más información sobre las funcionalidades de Windows Phone, consulta Funcionalidades de las aplicaciones y requisitos de hardware para Windows Phone 8.
 

Funcionalidades de uso general

Las funcionalidades de uso general se aplican a la mayoría de escenarios de las aplicaciones.

Escenario de funcionalidadUso de la funcionalidad
Music

La funcionalidad musicLibrary proporciona acceso mediante programación a la música del usuario, permitiendo a la aplicación enumerar todos los archivos de la biblioteca y acceder a ellos sin que haya interacción del usuario. Esta funcionalidad se usa normalmente en aplicaciones jukebox que usan la biblioteca de música completa.

El file picker proporciona un sólido mecanismo de interfaz de usuario que permite a los usuarios abrir archivos para usarlos con una aplicación. Declara la funcionalidad musicLibrary solo cuando los escenarios de la aplicación requieran acceso mediante programación y no puedas llevarlos a cabo con el file picker. Para obtener un ejemplo de cómo acceder a archivos de una biblioteca, consulta Inicio rápido: acceder a archivos mediante programación.

Pictures

La funcionalidad picturesLibrary proporciona acceso mediante programación a las imágenes del usuario, permitiendo a la aplicación enumerar todos los archivos de la biblioteca y acceder a ellos sin que haya interacción del usuario. Esta funcionalidad se usa normalmente en aplicaciones de fotografías que hacen uso de la biblioteca de imágenes completa.

El file picker proporciona un sólido mecanismo de interfaz de usuario que permite a los usuarios abrir archivos para usarlos con una aplicación. Declara la funcionalidad picturesLibrary solo cuando los escenarios de la aplicación requieran acceso mediante programación y no puedas llevarlos a cabo con el file picker. Para obtener un ejemplo de cómo acceder a archivos de una biblioteca, consulta Inicio rápido: acceder a archivos mediante programación.

Videos

La funcionalidad videosLibrary proporciona acceso mediante programación a los vídeos del usuario, permitiendo a la aplicación enumerar todos los archivos de la biblioteca y acceder a ellos sin que haya interacción del usuario. Esta funcionalidad se usa normalmente en aplicaciones de reproducción de películas que hacen uso de la biblioteca de vídeos completa.

El file picker proporciona un sólido mecanismo de interfaz de usuario que permite a los usuarios abrir archivos para usarlos con una aplicación. Declara la funcionalidad videosLibrary solo cuando los escenarios de la aplicación requieran acceso mediante programación y no puedas llevarlos a cabo con el file picker. Para obtener un ejemplo de cómo acceder a archivos de una biblioteca, consulta Inicio rápido: acceder a archivos mediante programación.

Removable Storage

La funcionalidad removableStorage proporciona acceso mediante programación a archivos en almacenamiento extraíble, como discos duros externos y llaves USB, filtrado para las asociaciones de tipo de archivo declaradas en el manifiesto del paquete. Por ejemplo, si una aplicación de lector de documentos declara una asociación de tipo de archivo .doc, puede abrir archivos .doc en el dispositivo de almacenamiento extraíble, pero no puede abrir otros tipos de archivo. Ten cuidado cuando declares esta funcionalidad, porque los usuarios pueden incluir diferentes tipos de información en sus dispositivos de almacenamiento extraíble y esperan que la aplicación proporcione una justificación válida para acceder mediante programación al almacenamiento extraíble de todos los tipos del tipo declarado.

Los usuarios esperarán que la aplicación controle cualquier asociación de archivos que declares. Por lo tanto, no declares asociaciones de archivos que la aplicación no pueda controlar de forma responsable. El file picker proporciona un sólido mecanismo de interfaz de usuario que permite a los usuarios abrir archivos para usarlos con una aplicación.

Declara la funcionalidad removableStorage solo cuando los escenarios de la aplicación requieran acceso mediante programación y no puedas llevarlos a cabo con el file picker.

Internet and public networks

Hay dos funcionalidades que proporcionan diferentes niveles de acceso a las redes públicas y a Internet. Estas funcionalidades conceden acceso distinto según la aplicación que se esté ejecutando en Windows o en Windows Phone.

En Windows, la funcionalidad internetClient indica que las aplicaciones pueden recibir datos entrantes de Internet. No puede actuar como servidor. Sin acceso a la red local.

En Windows, la funcionalidad internetClientServer indica que las aplicaciones pueden recibir datos entrantes de Internet. Puede actuar como servidor. Sin acceso a la red local.

En Windows Phone, la funcionalidad internetClient indica que las aplicaciones tienen acceso local y a Internet completo y que pueden actuar como servidor. El acceso entrante a los puertos críticos siempre está bloqueado.

En Windows Phone, la funcionalidad internetClientServer indica que las aplicaciones tienen acceso local y a Internet completo y que pueden actuar como servidor. El acceso entrante a los puertos críticos siempre está bloqueado.

En Windows, la mayoría de las aplicaciones con un componente de servicio web usarán internetClient. Las aplicaciones que habilitan escenarios punto a punto (P2P) donde la aplicación necesita escuchar las conexiones de red entrantes deben usar internetClientServer. La funcionalidad internetClientServer incluye el acceso que proporciona la funcionalidad internetClient, de manera que no tienes que especificar internetClient cuando especificas internetClientServer.

Nota  

Las aplicaciones de la Tienda de Windows Phone tienen una única funcionalidad de red que permite todo el acceso a la red de la aplicación. La funcionalidad internetClientServer permite el acceso completo a la red tanto en las operaciones de cliente (acceso saliente) como en las operaciones de servidor (acceso entrante). Sin embargo, si alguna de las funcionalidades de red (internetClient, internetClientServer o privateNetworkClientServer) está especificada en el archivo Package.appxmanifest, una aplicación de la Tienda de Windows Phone tendrá acceso completo a la red en tiempo de ejecución tanto en las operaciones de cliente como en las de servidor.

Cuando desarrollas y compruebas tu aplicación de la Tienda de Windows Phone en Visual Studio, obtendrás la funcionalidad de red (Internet (cliente y servidor)) al ejecutar la aplicación, aun cuando no hayas especificado esta funcionalidad en el archivo de manifiesto de la aplicación. Cuando publicas la aplicación, por el contrario, no obtendrás esta funcionalidad de manera automática. Procura seleccionar la funcionalidad Internet (cliente y servidor) en la página Funcionalidad del diseñador de manifiestos en caso de que tu aplicación precise de conectividad de red.

Home and work networks

La funcionalidad privateNetworkClientServer proporciona acceso de entrada y salida a redes domésticas y de trabajo a través del firewall. Esta funcionalidad suele usarse para juegos que se comunican en una red de área local (LAN) y aplicaciones que comparten datos entre varios dispositivos locales. Si tu aplicación especifica musicLibrary, picturesLibrary o videosLibrary, no necesitas usar esta funcionalidad para acceder a la biblioteca correspondiente en un grupo en el hogar. En Windows, esta funcionalidad no proporciona acceso a Internet. En Windows Phone, esta funcionalidad proporciona el mismo acceso que internetClient o internetClientServer.

Appointments

La capacidad appointments proporciona acceso al almacén de citas del usuario. Esta capacidad permite el acceso de lectura a citas obtenidas desde las cuentas de red sincronizadas y a otras aplicaciones que escriben en el almacén de citas. Con esta capacidad, tu aplicación puede crear calendarios nuevos y anotar citas en los calendarios que crea.

Contacts

La capacidad contacts proporciona acceso a la vista agregada de los contactos procedentes de varios almacenes de contactos. Esta capacidad ofrece a la aplicación un acceso limitado (se aplican las reglas de permisos de red) a los contactos que se sincronizaron de varias redes y el almacén de contactos local.

Code generation

La funcionalidad codeGeneration permite que las aplicaciones generen código de forma dinámica.

AllJoyn

La funcionalidad allJoyn permite que dispositivos y aplicaciones habilitados para AllJoyn se detecten e interactúen entre ellos.

Todas las aplicaciones que tienen acceso a las API en el espacio de nombres Windows.Devices.AllJoyn deben usar esta funcionalidad.

Phone calls

La funcionalidad phoneCall permite que las aplicaciones tengan acceso a todas las líneas telefónicas en el dispositivo y ejecuten las siguientes funciones.

  • Realiza una llamada en la línea telefónica y muestra el marcador del sistema sin pedir confirmación al usuario.
  • Obtener acceso a los metadatos relacionados con la línea.
  • Obtener acceso a los desencadenadores relacionados con la línea.
  • Permite que la aplicación de filtro de correo no deseado que haya seleccionado el usuario establezca y compruebe la lista de bloqueados y la información de origen de las llamadas.
Recorded Calls Folder

La funcionalidad recordedCallsFolder del dispositivo permite que las aplicaciones obtengan acceso a la carpeta de llamadas grabadas.

User Account Information

La funcionalidad userAccountInformation permite que las aplicaciones tengan acceso al nombre del usuario y a la imagen.

Esta funcionalidad es necesaria para acceder a algunas API del espacio de nombres Windows.System.User.

VOIP calling

La funcionalidad voipCall permite que las aplicaciones tengan acceso a las API de llamadas de VOIP en el espacio de nombres Windows.ApplicationModel.Calls.

3D Objects

La funcionalidad objects3d permite que las aplicaciones tengan acceso mediante programación a los archivos de objetos 3D. Esta funcionalidad se usa normalmente en aplicaciones 3D y juegos que necesitan tener acceso a toda la biblioteca de objetos 3D.

Esta funcionalidad es necesario para tener acceso a la carpeta que contiene los objetos 3D mediante las API en el espacio de nombres Windows.Storage.

Read Blocked Messages

La funcionalidad blockedChatMessages permite que las aplicaciones lean mensajes SMS y MMS bloqueados por la aplicación Filtro de correo no deseado.

Esta funcionalidad es necesaria para tener acceso a los mensajes bloqueados mediante las API del espacio de nombres Windows.ApplicationModel.Chat.

Chat Message Access

La funcionalidad chat permite que las aplicaciones lean y eliminen mensajes de texto. Esta funcionalidad también permite que las aplicaciones almacenen los mensajes de chat en el almacén de datos del sistema.

Esta funcionalidad es necesaria para usar algunas API en el espacio de nombres Windows.ApplicationModel.Chat.

 

Funcionalidades de dispositivo

Las funcionalidades de dispositivo permiten a tu aplicación acceder a los periféricos y dispositivos internos. Las funcionalidades de dispositivo se especifican con el elemento DeviceCapability en el manifiesto del paquete de la aplicación. Este elemento puede necesitar elementos secundarios adicionales y algunas funcionalidades de dispositivos deben agregarse al manifiesto del paquete manualmente. Para obtener más información, consulta Cómo especificar funcionalidades de dispositivos en un manifiesto del paquete y Schema reference for Windows 8 Windows Store apps o Schema reference for Windows 8.1 and Windows Phone 8.1.

Escenario de funcionalidadUso de la funcionalidad
Location

La funcionalidad location proporciona acceso a las funciones de ubicación, la cual se obtiene desde hardware dedicado, como un sensor GPS en el equipo, o se deriva de la información de red disponible. Las aplicaciones deben gestionar el caso en el que el usuario ha deshabilitado los servicios de localización desde el acceso a Configuración. Para obtener un ejemplo de cómo detectar la ubicación del usuario, consulta Detección de la ubicación geográfica.

Microphone

La funcionalidad microphone proporciona acceso a la alimentación de audio del micrófono, que permite a la aplicación grabar desde micrófonos conectados. Las aplicaciones deben gestionar el caso en el que el usuario ha deshabilitado el micrófono desde el acceso a Configuración. Para obtener un ejemplo de cómo grabar sonido, consulta Cómo grabar audio o vídeo.

Proximity

La funcionalidad proximity permite la comunicación entre varios dispositivos que se encuentran cerca unos de otros. Esta funcionalidad se utiliza normalmente en juegos esporádicos de varios jugadores y en aplicaciones que intercambian información. Los dispositivos intentan usar la tecnología de comunicación que proporcione la mejor conexión posible, lo que incluye Bluetooth, Wi-Fi e Internet. Esta funcionalidad se usa solo para iniciar la comunicación entre los dispositivos. Para obtener un ejemplo de cómo utilizar la proximidad para conectar aplicaciones, consulta Inicio rápido: conexión de aplicaciones mediante gesto de pulsar o exploración.

Webcam

La funcionalidad webcam proporciona acceso a la fuente de vídeo de una cámara integrada o a una cámara web externa, que permite a la aplicación capturar fotos y vídeos. En Windows, las aplicaciones deben controlar el caso en el que el usuario ha deshabilitado la cámara desde el acceso a Configuración. Para obtener un ejemplo de cómo grabar vídeo, consulta Cómo grabar audio o vídeo.

La funcionalidad webcam solo concede acceso a la secuencia de vídeo. Para conceder acceso también a la secuencia de audio, debe agregarse la funcionalidad microphone.

USB

La funcionalidad de dispositivo usb permite el acceso a las API del espacio de nombres Windows.Devices.Usb. Usando el espacio de nombres, puedes escribir una aplicación que se comunica con un dispositivo USB personalizado. En este contexto, "personalizado" hace referencia a un dispositivo periférico para el que Microsoft no proporciona un controlador de clases integrado. Esta funcionalidad de dispositivo requiere elementos secundarios. Para obtener más información, consulta Actualización del manifiesto del paquete de la aplicación para un dispositivo USB.

Nota  Windows Phone no admite las API de USB.
 
Human interface device (HID)

La funcionalidad de dispositivo humaninterfacedevice permite el acceso a las API del espacio de nombres Windows.Devices.HumanInterfaceDevice. Este espacio de nombres permite a tu aplicación tener acceso a los dispositivos que admiten el protocolo Dispositivo de interfaz de usuario (HID). Esta funcionalidad de dispositivo requiere elementos secundarios. Para obtener más información, consulta Cómo especificar funcionalidades de dispositivo para HID.

Bluetooth GATT

La funcionalidad de dispositivo bluetooth.genericAttributeProfile permite el acceso a las API del espacio de nombres Windows.Devices.Bluetooth.GenericAttributeProfile. Este espacio de nombres permite a las aplicaciones tener acceso a dispositivos Bluetooth LE a través de una colección de servicios principales que incluye servicios, características y descriptores. Para obtener más información, consulta Cómo especificar funcionalidades de dispositivo para Bluetooth.

Bluetooth RFCOMM

La funcionalidad de dispositivo bluetooth.rfcomm permite el acceso a las API del espacio de nombres Windows.Devices.Bluetooth.Rfcomm. Este espacio de nombres admite el transporte BR/EDR (velocidad básica/velocidad de datos extendida) y permite a tu aplicación tener acceso a dispositivos que implementan SPP (perfil de puerto serie). Esta funcionalidad de dispositivo requiere elementos secundarios. Para obtener más información, consulta Cómo especificar funcionalidades de dispositivo para Bluetooth.

Point of Sevice (POS)

La funcionalidad del dispositivo pointOfService permite el acceso a las API del espacio de nombres Windows.Devices.PointOfService. Este espacio de nombres permite a tu aplicación de la Tienda Windows acceder a lectores de códigos de barras POS y lectores de bandas magnéticas. El espacio de nombres ofrece una interfaz independiente del proveedor para acceder a dispositivos POS de diferentes fabricantes desde una aplicación de la Tienda Windows.

Nota  Windows Phone no admite las API de punto de servicio.
 

 

Funcionalidades especiales

Las funcionalidades especiales están indicadas para escenarios muy específicos. El uso de estas funcionalidades está muy restringido y está sujeto a revisión y a directivas de incorporación adicionales de la Tienda. Hay casos en los que estas funcionalidades son necesarias y apropiadas, como en aplicaciones de banca con autenticación de dos factores, en las que los usuarios proporcionan una tarjeta inteligente con un certificado digital que confirme su identidad. Es posible que otras aplicaciones se hayan diseñado principalmente para empresas y precisen acceder a recursos corporativos a los que no es posible acceder sin las credenciales de dominio del usuario.

Las aplicaciones que aplican las funcionalidades de uso especial requieren una cuenta de empresa para enviarlas a la Tienda. Para obtener más información sobre las cuentas de empresa para Windows, consulta Tipos de cuenta, ubicaciones y precios.

Escenario de funcionalidadUso de la funcionalidad
Enterprise authentication

Las credenciales de dominio de Windows permiten al usuario usar sus credenciales para iniciar sesión en recursos remotos y funcionan como si el usuario hubiera proporcionado su nombre de usuario y contraseña. La funcionalidad especial enterpriseAuthentication se usa normalmente en aplicaciones de línea de negocio que se conectan a los servidores de una empresa.

No necesitas esta funcionalidad para la comunicación genérica a través de Internet.

La funcionalidad especial enterpriseAuthentication se usa para admitir las aplicaciones comunes de línea de negocio. No la declares en aplicaciones que no necesiten acceder a recursos de empresa. El file picker proporciona un sólido mecanismo de interfaz de usuario que permite a los usuarios abrir archivos en un recurso compartido de red para usarlos con una aplicación. Declara la funcionalidad especial enterpriseAuthentication solo cuando los escenarios de la aplicación requieran acceso mediante programación y no puedas llevarlos a cabo con el file picker.

Shared user certificates

Esta funcionalidad especial sharedUserCertificates permite el acceso de una aplicación a certificados de software y hardware, como certificados almacenados en una tarjeta inteligente. Esta funcionalidad suele usarse para aplicaciones empresariales o financieras que requieren una tarjeta inteligente para la autenticación.

Documents

La funcionalidad especial documentsLibrary proporciona acceso con programación a los documentos del usuario, filtrado según las asociaciones de tipo de archivo declaradas en el manifiesto del paquete, para admitir acceso sin conexión a OneDrive. Por ejemplo, si una aplicación de lector de DOC declaró una asociación de tipo de archivo .doc, puede abrir archivos .doc en Documentos, pero no puede abrir otros tipos de archivo.

Las aplicaciones que declaran la funcionalidad especial documentsLibrary no pueden acceder Documentos en los equipos del grupo en el hogar. El selector de archivos proporciona un sólido mecanismo de interfaz de usuario que permite a los usuarios abrir archivos para usarlos con una aplicación. Declara la funcionalidad especial documentsLibrary solo cuando no puedas usar el selector de archivos.

Para usar la funcionalidad especial documentsLibrary, una aplicación debe:

  • Facilitar el acceso sin conexión entre plataformas a contenido de OneDrive específico con direcciones URL o id. de recurso de OneDrive válidos
  • Guardar los archivos abiertos en el OneDrive del usuario automáticamente en el modo sin conexión

Las aplicaciones que usan la funcionalidad especial documentsLibrary para estos dos propósitos también pueden usar opcionalmente la funcionalidad para abrir contenido insertado en otro documento. Solo se aceptan los usos de la funcionalidad especial documentsLibrary mencionados.

La biblioteca Documentos no se puede usar en una aplicación de la Tienda de Windows Phone.

  • En la Tienda de Windows Phone no se puede publicar una aplicación en la que se especifique la funcionalidad especial documentsLibrary. La Tienda impide la publicación de la aplicación.

  • No se puede acceder a la biblioteca Documentos en el almacenamiento interno del teléfono. Con todo, si otra aplicación crea una carpeta Documentos en la tarjeta SD opcional, tu aplicación podrá ver esa carpeta.

 

Temas relacionados

Diseñador de manifiestos
Cómo especificar funcionalidades en un manifiesto del paquete
Cómo especificar funcionalidades de dispositivo en un manifiesto del paquete

 

 

Mostrar:
© 2018 Microsoft