将手表应用程序添加到 Flutter iOS 应用程序

Adding a watch app to a Flutter iOS application

我在尝试创建带有手表应用扩展的 Flutter iOS 应用时遇到了一个问题。

为了测试,我使用

创建了一个默认的 Flutter 应用程序
flutter create watchapp

当这是 运行 我得到标准的演示 Flutter 应用程序。

如果我然后在 Xcode 中打开 ios/Runner.xcworkspace 项目并向项目添加一个新目标 (File->New->Target ) 并选择 watchOS->Watchkit App 它将生成手表应用程序。

我遇到的问题是当 运行 再次运行应用程序时(抖动 运行)我收到以下错误。

Xcode build done.                                            1.2s
Failed to build iOS app
Error output from Xcode build:
↳
** BUILD FAILED **
Xcode's output:
↳
=== BUILD TARGET mywatch Extension OF PROJECT Runner WITH CONFIGURATION 
Debug ===
target specifies product type 'com.apple.product-type.watchkit2-extension', but there's no such product type for the 'iphoneos' platform

我正在考虑构建一个可以与 Watch 应用程序通信的 Flutter 插件,但除非我可以通过添加手表应用程序让 Flutter 达到 运行,否则没有太多意义。

有人有什么建议吗?

颤振:0.9.4, Xcode: 10.0

更新:为清楚起见,我将 WatchApp 作为 Swift 应用程序作为新目标添加到 Runner 项目中,我不打算使用 Flutter/Dart 创建 WatchApp。

Flutter 不支持 Apple Watch 应用程序,因为它缺少对 iOS 的位码支持,如 this GitHub issue.

中所述

您可以跟踪 iOS - Flutter GitHub issue 添加 Bitcode 支持的状态,但目前它对 Flutter 开发团队的优先级似乎较低。

看来 flutter 已经支持 apple watch 开发了。这是一个例子:

https://github.com/magnatronus/flutter-watchtips