Capability

Declares a capability required by a package.

Element hierarchy

<Package>
<Capabilities>
<Capability>

Syntax

<Capability Name = "internetClient" | "internetClientServer" | "privateNetworkClientServer" | "documentsLibrary" | "picturesLibrary" | ... />

Attributes and Elements

Attributes

Attribute Description Data type Required Default value
Name

The name of the capability.

This attribute can have one of the following values:

  • internetClient
  • internetClientServer
  • privateNetworkClientServer
  • documentsLibrary
  • picturesLibrary
  • videosLibrary
  • musicLibrary
  • enterpriseAuthentication
  • sharedUserCertificates
  • removableStorage
Yes

Child Elements

None.

Parent Elements

Parent Element Description
Capabilities

Declares the access to protected user resources that the package requires.

Remarks

The following table describes the capability values.

Capability Description
internetClient On Windows, this provides access to your Internet connection for outgoing connections to the Internet. On Windows Phone, provides full local and internet access and can act as a server, but inbound access to critical ports is always blocked.
internetClientServer On Windows, this provides access to your Internet connection, including incoming unsolicited connections from the Internet – the app can send information to or from your computer through a firewall. You do not need to declare internetClient if this capability is declared. On Windows Phone, provides full local and internet access and can act as a server, but inbound access to critical ports is always blocked.
privateNetworkClientServer On Windows, this provides access to a home or work network – the app can send information to or from your computer and other computers on the same network. On Windows Phone, provides the same access as internetClient or internetClientServer.
documentsLibrary Your documents library, including the capability to add, change, or delete files. The package can only access file types that it has declared in the manifest. The app cannot access document libraries on HomeGroup computers.
picturesLibrary Your pictures library, including the capability to add, change, or delete files. This capability also includes pictures libraries on HomeGroup computers, along with picture file types on locally connected media servers.
videosLibrary Your videos library, including the capability to add, change, or delete files. This capability also includes videos libraries on HomeGroup computers, along with video file types on locally connected media servers.
musicLibrary Your music library and playlists, including the capability to add, change, or delete files. This capability also includes music libraries and playlists in the music library on HomeGroup computers, plus music file types on locally connected media servers.
enterpriseAuthentication Your Windows credentials, for access to a corporate intranet. This application can impersonate you on the network.
sharedUserCertificates Software and hardware certificates or a smart card – used to identify you in the app. This capability may be used by your employer, bank, or government services to identify you.
removableStorage Removable storage, such as an external hard drive or USB flash drive, or MTP portable device, including the capability to add, change, or delete specific files. This package can only access file types that it has declared in the manifest.

Examples

Here's an example of aCapabilities node.

<Capabilities>
  <Capability Name="internetClient"/>
  <Capability Name="musicLibrary"/>
  <Capability Name="videosLibrary"/>
  <DeviceCapability Name="microphone"/>
  <DeviceCapability Name="webcam"/>
</Capabilities>

See also

App capability declarations

Guidelines for app settings

Requirements

Namespace

http://schemas.microsoft.com/appx/2010/manifest