Windows Phone 和 WinRT 的私有应用商店

  • Jonathan Allen
  • 李彬

2013 年 7 月 12 日

话题:架构

对 WinRT 和 Windows Phone 8 来说,应用都可以采用私有分发的方式,但在两个平台上的私有分发过程截然不同。

Windows Phone 8

要构建Windows Phone 8 私有应用商店,应用发行方需要从 Symantec 获取一份“企业证书”。该证书的基本费用为每年 300 美元。应用发行方可以使用该证书创建一份应用程序注册标记(AET:Application Enrollment Token)——每个需要使用私有应用的 Windows Phone 设备必须安装 AET,而一部手机可以安装多个 AET。

接下来,应用发行方需要创建“公司中心”(Company Hub),它将扮演面向用户的软件商店的角色。如果应用发行方使用 WindowsIntune 或 System Center 2012,那么可以利用Windows Phone 8 公司门户应用。否则的话则需要自建公司门户应用。微软提供了一份“公司中心”的样例作为上手参考资料。“公司中心”的 XAP 文件可以直接安装到手机上。

“公司中心”可以调用InstallationManager.AddPackageAsync来安装其他的公司应用 XAP 包,不过这些应用必须使用“公司中心”采用的证书进行签名。

安装过程中,手机必须联系微软服以校验公司账户是否有效。这一步骤用于防止某个遭到入侵的程序中的恶意软件被安装在手机上。另外,更可能的情况是,它会组织某人创建一个绕开微软官方商店的公共应用商店。

Windows 8/WinRT

如果应用发行方拥有 Windows 8 企业版,并且是 Active Directory 的一部分,那么就不需要支付基本费用。而要购买 Windows 8 企业版,只能通过订阅“Microsoft 批量许可计划,例如 Select Plus、Enterprise Agreement 或 Enterprise Subscription Agreement”——大部分公司都没有订购,因此也就无法访问它。

除此之外的其他任何应用发行方都需要使用激活密钥。Rockford Lhotka表示,密钥的价格将是每台机器 30 美元。这价格看起来不赖,但是细想一下却不然——必须一次性购买 100 个!因此如果某个应用发行方拥有 101 部需要配置的机器,那么就需要支付 6000 美元来获得应用安装的许可。

不仅如此,应用发行方还需要找到某种途径,来将应用切实部署到机器上。对此,Rockford 给出了以下 4 个可选方案:

  • Sneaker-net方式:使用 U 盘
  • 从网络共享中运行 Powershell 脚本
  • 通过系统中心(假定拥有这一 IT 基础架构层)部署
  • 通过微软的云服务 InTune 部署,在这里可以构建“公司的软件市场”

如果选择 InTune 构建自己的私有软件商店,那么基础价格是每设备每月 6 美元。假定计算机拥有 3 年工作周期,要获取部署到 100 台机器的权限,需要花费 22600 美元。如果只需要部署到 10 台计算机,那么 3 年里每台计算机的平均花费就从 226 美元上升至 516 美元。

另外,Rockford 其实还遗漏了一个可选方案。由于可以使用 PowerShell 脚本来部署,因此可以通过另一个使用 WPF 或 WinForms 编写的应用来发起。不过这个方案显然只能在 x86 和 x64 版本的 Windows 上使用。

查看英文原文:Private App Stores for Windows Phone and WinRT

架构