Xamarin.Forms/Xamarin.Android 在物理智能手表设备上部署应用程序

Xamarin.Forms/Xamarin.Android deploy app on a physical smartwatch device

我的问题

我想知道你们中是否有人知道如何将来自 Visual Studio 的 Xamarin.Forms/native Xamarin.Android 应用程序放在物理智能手表上。我咨询了各种来源,但没有取得任何进展。同样在 Visual Studio 中,智能手表未出现在已连接设备列表中。智能手表是三星 Galaxy Watch4 和 运行s on Wear OS 3.2(Wear OS 3 再次基于 Android 11)。我还通过蓝牙连接将智能手表连接到我的笔记本电脑,但尽管有这种连接,我仍然没有看到列出的设备(我在 Xamarin.Forms 项目和本机 Xamarin.Android 项目中都尝试过)。此外,我在智能手表和智能手机上都激活了开发者选项,并打开了 USB 调试。在智能手表上,我还打开了 'Debug via Bluetooth' 选项以防万一。

在Visual Studio中安装了所需的SDK工具,智能手表已链接到三星智能手机。将 Visual Studio 应用程序转移到智能手机上没有任何问题,但如何将应用程序放在智能手表上仍然是个问题。

我使用的相关软硬件

我已经发现或尝试过的

在 Microsoft 的文档中,我也尝试按照以下步骤操作 Debug on a Wear Device 但是当我进入第 4 步时,第一个命令有效,但第二个命令出现无法建立连接的错误。如果我再次尝试 运行 相同的命令,我会收到另一条消息说已经有一个连接。

在那之后我无法在文档中进一步了解,因为以下命令仅在 127.0.0.1:4444 不是 'offline' 但状态为 'device'.[=16 时才有效=]

在本机 Xamarin.Android 可穿戴应用程序的另一份 Microsoft 文档中 'supposedly' 物理设备应自动出现在已连接设备列表中,但在此项目中,尽管有蓝牙连接,但该设备未列出在我的笔记本电脑和智能手表之间.. Run the Android Wear app

如果你们中有人知道如何做到这一点,我将不胜感激.. 感谢您的帮助。

更新:14-03-2022 15:20 [问题已解决]

我仍然不知道如何通过蓝牙连接将应用程序从 Visual Studio 获取到智能手表,尽管遵循了文档(如果有人知道,请告诉我)。这就是为什么我研究了如何通过 WiFi 连接完成这项工作。

我是怎么解决的?

  1. 在您的智能手表设备上启用 'Debugging over Wi-Fi'(在启用调试器选项后 Enable Debugger Options。P.S。他们指的是内部版本号,但您应该按 5 次 'Software Version Number',不是 7 次)
  2. 下载 Android SDK Platform tools(以便能够使用像 'adb' 这样的命令)
  3. 提取文件并将其保存在计算机硬盘上的某个位置
  4. 在Windows
  5. 中启动'CMD'程序
  6. 转到 (cd [..location....]) 'adb.exe' 所在的文件夹(即您提取第一个文件的位置)
  7. 要确认您是否已连接,您可以运行以下命令:adb devices
  8. 将智能手表连接到与 Visual Studio 所在的 PC/laptop 相同的 WiFi 网络,并检查智能手表上的 IPv4 地址
  9. 如果附近的 WiFi range/no WiFi 信号不佳,您也可以通过笔记本电脑创建一个 WiFi 热点来实现此功能
  10. 在 Windows 中搜索 'Mobile Hotspot' 功能
  11. 启用选项:'Share my internet connection with other devices'
  12. 将智能手表连接到此 self-created 网络
  13. 现在智能手表已连接,您可以返回 CMD 屏幕
  14. 取智能手表的IPv4地址和运行命令如下:adb connect [插入IPv4地址并去掉括号]
  15. 运行 再次执行命令:adb devices
  16. 您现在会看到它显示在 'attached' -> 设备下,在您的智能手表设备名称旁边
  17. 如果您现在查看 Visual Studio,您应该会看到智能手表设备,您可以将应用程序安装到您的智能手表上
  18. 如果要忽略所有连接,可以使用以下命令:adb kill-server

现在您不再需要使用 USB 连接或通过 WiFi 将智能手机连接到 laptop/PC,因为您现在可以直接通过互联网连接访问智能手表。