name: flutter-desktop-config description: 为桌面平台配置Flutter,包括平台通道和原生集成 allowed-tools: Read, Write, Edit, Bash, Glob, Grep tags: [flutter, dart, 跨平台, 桌面, ui]
flutter-desktop-config
为桌面平台(Windows, macOS, Linux)配置Flutter,包括平台通道、原生集成和平台特定配置。
能力
- 启用Flutter桌面支持
- 为原生代码配置平台通道
- 设置平台特定的运行器
- 配置窗口管理
- 设置菜单栏和系统托盘
- 配置应用图标和元数据
- 设置MSIX/DMG/DEB打包
- 配置插件支持
输入模式
{
"type": "object",
"properties": {
"projectPath": { "type": "string" },
"platforms": { "type": "array", "items": { "enum": ["windows", "macos", "linux"] } },
"windowConfig": { "type": "object" },
"nativeChannels": { "type": "array" }
},
"required": ["projectPath"]
}
平台通道示例
// Dart 端
class NativeService {
static const platform = MethodChannel('com.example/native');
Future<String> getSystemInfo() async {
return await platform.invokeMethod('getSystemInfo');
}
}
// macOS (Swift)
let controller = FlutterViewController()
let channel = FlutterMethodChannel(name: "com.example/native",
binaryMessenger: controller.engine.binaryMessenger)
channel.setMethodCallHandler { call, result in
if call.method == "getSystemInfo" {
result(ProcessInfo.processInfo.operatingSystemVersionString)
}
}
相关技能
cross-platform-test-matrixdesktop-build-pipeline流程