Microsoft Band SDK Preview的文档声称它支持 Windows 应用程序的 WinRT 8.1,但在将 NuGet 包(1.3.10219-preview)下载到我的 Windows Store C# 项目后,我遇到了一些主要障碍:
首先,当我在立即添加 NuGet 包后尝试构建时,出现以下编译错误:
Payload file 'C:\...\packages\Microsoft.Band.1.3.10219-preview\lib\portable-win81+wpa81\Microsoft.Band.Store\Tiles\AddTilePage.xbf' does not exist.
Payload file 'C:\...\packages\Microsoft.Band.1.3.10219-preview\lib\portable-win81+wpa81\Microsoft.Band.Store\Microsoft.Band.Store.xr.xml' does not exist.
其次,文档说将以下无效 XML 添加到Package.appxmanifest
:
<DeviceCapability Name="bluetooth.rfcomm">
<Device Id="any">
<!-- Used by the Microsoft Band SDK Preview -->
<Function Type="serviceId:A502CA9A-2BA5-413C-A4E0-13804E47B38F" />
<!-- Used by the Microsoft Band SDK Preview -->
<Function Type="serviceId:C742E1A2-6320-5ABC-9643-D206C677E580" />
</Device>
</m2:DeviceCapability>
第三,该Microsoft.Band.Store.dll
程序集不包含 aBandClientManager
所以我无法获得对我的乐队的引用,如文档中所述。
通过从 wpa81 NuGet 包中复制丢失的文件并将前缀分别添加到所有 XML 元素,我能够解决第一个和第二个问题m2:
,但我不知道如何解决第三个问题。使用 .NET Reflector 进行探索,看起来该功能可能被锁定在某些内部类中,但我在公共类型中看不到任何东西。
无论如何要让它在 Windows 上工作还是只在 Windows Phone 上工作?