适用于 Windows Store 8.1 应用程序的 Microsoft Band SDK?
Microsoft Band SDK for Windows Store 8.1 app?
Microsoft Band SDK 预览版的 documentation 声称它支持 Windows 应用程序的 WinRT 8.1,但是在将 NuGet 包(1.3.10219-预览版)下载到我的 Windows 商店之后C# 项目 I 运行 遇到一些主要障碍:
首先,当我在立即添加 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
程序集不包含 BandClientManager
,所以我无法按照文档中的描述获得对我的乐队的引用。
我能够通过从 wpa81 NuGet 包中复制丢失的文件并分别向所有 XML 元素添加 m2:
前缀来解决第一个和第二个问题,但我不知道如何解决第三个问题。浏览 .NET Reflector,看起来功能可能被锁定在某些内部 类 中,但我在 public 类型中看不到任何东西。
有没有办法让这个在 Windows 上工作,还是只在 Windows Phone 上工作?
最初的 Microsoft Band SDK 预览版(1.3.10219-预览版)专注于 Windows Phone,因此不包含专门用于 Windows Store 应用程序的 NuGet 目标。它允许在针对 Windows Phone 和 Windows Store 的可移植库中捆绑与 Band 相关的逻辑——尽管你遇到了打包问题——但不允许创建Windows Store.
上的 IBandClient 实例
新的 SDK 现在支持 Windows 应用商店 :)
--------老------
我能够使用一点反射访问我的 Windows Store 应用程序中的 BandClientManager,并且可以访问 SDK 中的所有内容,除了订阅传感器数据,因为该部分使用 RfcommDeviceService.Device只能在 Windows Phone 上访问的类型。
也可以使用套接字 API 进行连接,但接下来就是读写数据和解释数据的问题:P
我已经花了一些时间使用 SDK,厌倦了必须将手环连接到我的 phone 并将应用程序部署到 phone for testing/debugging,所以我最终创建了一个包含 SDK 的模拟器。我想你可以为缺失的位做类似的事情。模拟器使用套接字发送预先记录的数据(使用文件 - 然后将动画移动)或通过使用 mouse/touch 操纵 'band' 就像你对 Windows Phone模拟器。
显然这些只是临时解决方案或用于开发目的,直到发布兼容商店的 SDK。
Microsoft Band SDK 预览版的 documentation 声称它支持 Windows 应用程序的 WinRT 8.1,但是在将 NuGet 包(1.3.10219-预览版)下载到我的 Windows 商店之后C# 项目 I 运行 遇到一些主要障碍:
首先,当我在立即添加 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
程序集不包含 BandClientManager
,所以我无法按照文档中的描述获得对我的乐队的引用。
我能够通过从 wpa81 NuGet 包中复制丢失的文件并分别向所有 XML 元素添加 m2:
前缀来解决第一个和第二个问题,但我不知道如何解决第三个问题。浏览 .NET Reflector,看起来功能可能被锁定在某些内部 类 中,但我在 public 类型中看不到任何东西。
有没有办法让这个在 Windows 上工作,还是只在 Windows Phone 上工作?
最初的 Microsoft Band SDK 预览版(1.3.10219-预览版)专注于 Windows Phone,因此不包含专门用于 Windows Store 应用程序的 NuGet 目标。它允许在针对 Windows Phone 和 Windows Store 的可移植库中捆绑与 Band 相关的逻辑——尽管你遇到了打包问题——但不允许创建Windows Store.
上的 IBandClient 实例新的 SDK 现在支持 Windows 应用商店 :)
--------老------
我能够使用一点反射访问我的 Windows Store 应用程序中的 BandClientManager,并且可以访问 SDK 中的所有内容,除了订阅传感器数据,因为该部分使用 RfcommDeviceService.Device只能在 Windows Phone 上访问的类型。
也可以使用套接字 API 进行连接,但接下来就是读写数据和解释数据的问题:P
我已经花了一些时间使用 SDK,厌倦了必须将手环连接到我的 phone 并将应用程序部署到 phone for testing/debugging,所以我最终创建了一个包含 SDK 的模拟器。我想你可以为缺失的位做类似的事情。模拟器使用套接字发送预先记录的数据(使用文件 - 然后将动画移动)或通过使用 mouse/touch 操纵 'band' 就像你对 Windows Phone模拟器。
显然这些只是临时解决方案或用于开发目的,直到发布兼容商店的 SDK。