- flutter-desktop-embedding的工程要和Flutter SDK的目录在同一级
在flutter-desktop-embedding/example/macos
路径有一个ExampleEmbedder.xcodeproj
,双击在xcode中打开,运行后效果如下
感觉Flutter在PC上还挺简单的,真是如此吗??
3. 在PC上运行天气查询APP
接下来,实现在PC上跑通之前写得天气查询APP
3.1 Flutter代码改造
因为现在Flutter默认还不支持PC,如果不改造就在PC上跑,会报Unknown platform
的错误,为什么会报这个错误呢?因为Flutter在运行的时候,都会根据当前平台设置TargetPlatform
的值,但是因为PC现在还不是Flutter默认支持的平台,导致没有给TargetPlatform
赋值,从而抛出Unknown platform
的错误,具体我们看源代码:
- 在Flutter源码中的platform.dart中的如下代码:
//获取 TargetPlatform只的函数
TargetPlatform get defaultTargetPlatform {
TargetPlatform result;
//这里根据平台来赋值,但是只有iOS、Android、Fuchsia,没有PC
if (Platform.isIOS) {
result = TargetPlatform.iOS;
} else if (Platform.isAndroid) {
result = TargetPlatform.android;
} else if (Platform.isFuchsia) {
result = TargetPlatform.fuchsia;
}
assert(() {
if (Platform.environment.containsKey(‘FLUTTER_TEST’))<