通过


在设备元数据创作向导中指定应用程序

重要

设备元数据已弃用,并将在 Windows 的将来版本中删除。 有关替代功能的信息,请参阅驱动程序包容器元数据

可以为设备指定各种应用程序,包括Microsoft应用商店设备应用和特权应用程序。

当用户首次连接设备时,将下载并安装 UWP 设备应用。 特权应用程序对设备具有特殊访问权限。 只能指定其中一个。

指定 Microsoft Store 设备应用

  1. 单击“ 应用程序 ”选项卡。
  2. 填写以下字段:
    1. 包名称。 在应用程序清单的 Package 元素的 Identity 元素中输入 Name 属性的值。 应在创建向 Microsoft Store 提交的应用之后获取包名称,因为包名称会在 Microsoft Store 提交过程中改变。 有关如何将应用与 Microsoft 应用商店关联并将更新的值复制到应用清单的详细信息,请参阅 生成 UWP 设备应用
    2. Publisher。 在应用程序清单的 Package 元素的 Identity 元素中输入 Publisher 属性的值。 发布者名称应与用于对包和元数据进行签名的开发人员证书上的发布者名称相同。
    3. 应用 ID。 在应用程序清单的 Application 元素中,输入 ID 属性的具体值。
    4. 通知处理程序。 有关通知处理程序的信息,请参阅 设备元数据架构参考

包名称发布服务器应用 ID 必须与应用包 .appxmanifest 中的信息匹配。

以下 XML 代码是应用程序清单的示例:

<?xml version="1.0" encoding="utf-8" ?>
   <Package xmlns="http://schemas.microsoft.com/appx/2010/manifest">
      <Identity Name="Microsoft.SDKSamples.MoFx2App" Version="1.0.0.0" Publisher="CN=Microsoft\O=Microsoft Corp\L=Redmond\S=WA\C=US" ResourceId="NorthAmerica" />
   <Properties>
     <DisplayName>MoFx2App SDK Sample</DisplayName>
     <Description>MoFx2App SDK Sample</Description>
     <Logo>images\tile-sdk.png</Logo>
   </Properties>
<Resources>
  <Resource Language="en-us" />
</Resources>
<Applications>
  <Application Id="Microsoft.SDKSamples.MoFx2App" DisplayName="MoFx2App" Logo="images\tile-sdk.png" SmallLogo="images\tile-sdk.png" EntryPointType="startPage" EntryPoint="default.html">

查看包名和发布者

  1. 在 Visual Studio 中打开应用程序解决方案。
  2. 在解决方案资源管理器中单击应用清单。
  3. 双击“Package.appxmanifest”。
  4. 在“ 打包 ”选项卡上,查看 “包名称 ”和“ 发布服务器 ”字段。

查看应用 ID

  1. 在 Visual Studio 中打开应用程序解决方案。
  2. 在解决方案资源管理器中单击应用清单。
  3. 右键单击 Package.appxmanifest。
  4. 选择“查看代码”

特权应用程序

若要使Microsoft应用商店设备应用有权访问特权设备接口,必须在 “特权应用程序”下指定该应用。

若要指定特权应用程序,请在 Privileged Application 下填写以下字段:

注释

有关特权设备接口属性密钥的详细信息,请参阅 DEVPKEY_DeviceInterface_Restricted

  • 包名称。 在应用程序清单的 Package 元素的 Identity 元素中输入 Name 属性的值。
  • Publisher。 在应用程序清单的 Package 元素的 Identity 元素中输入 Publisher 属性的值。
  • 如果特权应用程序访问自定义驱动程序,请选择 AccessCustomDriver

以下 XML 代码是应用程序清单的示例,其中显示了在设备元数据创作向导中输入的标识名称、发布者和应用程序 ID 字段:

<?xml version="1.0" encoding="utf-8"?>
<Package xmlns="http://schemas.microsoft.com/appx/2010/manifest">
  <Identity Name="64022FABRIKAM.FabrikamDeviceApp" Publisher="CN=05558413-FFF6-4AA5-8176-AD43036533FA" Version="1.0.0.0" />
  <Properties>
    <DisplayName>Fabrikam Device App</DisplayName>
    <PublisherDisplayName>Fabrikam</PublisherDisplayName>
    <Logo>Assets\storeLogo-sdk.png</Logo>
  </Properties>
  <Prerequisites>
    <OSMinVersion>6.2</OSMinVersion>
    <OSMaxVersionTested>6.2</OSMaxVersionTested>
  </Prerequisites>
  <Resources>
    <Resource Language="x-generate" />
  </Resources>
  <Applications>
    <Application Id="DeviceAppForPrinters" Executable="$targetnametoken$.exe"
        EntryPoint="DeviceAppForPrinters.App">
      <VisualElements DisplayName="Fabrikam Device App" Logo="Assets\squareTile-sdk.png"
         SmallLogo="Assets\smallTile-sdk.png" Description="DeviceAppForPrinters" ForegroundText="light" BackgroundColor="#00b2f0" ToastCapable="true">
        <DefaultTile ShowName="allLogos" ShortName="App4PrinterCS" WideLogo="Assets\tile-sdk.png" />
        <SplashScreen Image="Assets\splash-sdk.png" BackgroundColor="#00b2f0" />
      </VisualElements>
      <Extensions>
          <Extension Category="windows.backgroundTasks"
             EntryPoint="Fabrikam.Printing.PrintApp.PrintNotificationHandler">
               <BackgroundTasks>
                 <Task Type="systemEvent" />
               </BackgroundTasks>
          </Extension>
          <Extension Category="windows.printTaskSettings"
             Executable="$targetnametoken$.exe" EntryPoint="DeviceAppForPrinters.App" />
      </Extensions>
    </Application>
  </Applications>
</Package>

以下 XML 代码是设备元数据创作向导生成的 XML 中与应用程序清单字段对应的元素示例:

<?xml version="1.0" encoding="utf-8" standalone="yes"?>
<SoftwareInfo xmlns="http://schemas.microsoft.com/windows/2010/08/DeviceMetadata/SoftwareInfo">

  <DeviceCompanionApplications>
       <Package>
         <Identity Name="64022FABRIKAM.FabrikamDeviceApp"
          Publisher="CN=05558413-FFF6-4AA5-8176-AD43036533FA" />
         <Applications>
          <Application Id="DeviceAppForPrinters">
           <DeviceNotificationHandlers>
                   <DeviceNotificationHandler
                      EventID="PrintNotificationHandler"
            EventAsset="Fabrikam.Printing.PrintApp.PrintNotificationHandler" />
                </DeviceNotificationHandlers>
         </Application>
          </Applications>
       </Package>
  </DeviceCompanionApplications>

  <PrivilegedApplications>
    <Package>
         <Identity Name="64022FABRIKAM.FabrikamDeviceApp"
              Publisher="CN=05558413-FFF6-4AA5-8176-AD43036533FA"
              AccessCustomDriver="false" />  
    </Package>
  </PrivilegedApplications>
</SoftwareInfo>