☰
在现有iOS项目中集成Flutter
2026/10/24 1:39:28 网站建设 项目流程

一、工程依赖

1)在 iOS 工程同级目录上创建 flutter_module 独立的项目。

$ flutter create -t module flutter_module

2)在 iOS 项目的 Podfile 中添加以下代码,给工程 target 配置 flutter 相关的 pods。

target "Demo" do flutter_application_path = '../flutter_module' load File.join(flutter_application_path, '.ios', 'Flutter', 'podhelper.rb') install_all_flutter_pods(flutter_application_path) pod 'AFNetworking' end

3)打开 flutter_module 的 pubspec.yaml,添加依赖 packages。

dependencies: flutter: sdk: flutter # ^ 表示适配和当前大版本一致的版本;~ 表示适配和当前小版本一致的版本 sqflite: ^2.4.2 provider: ^6.1.5

4)进入 flutter_module 目录,获取 Packages 依赖。

$ flutter packages get

5)在 iOS 工程目录上执行 pod install ,完成之后就可以在 iOS 工程中看到 flutter 及依赖库的Framework 和源码。

$ pod install

如果将 iOS 工程和 flutter_module 拷贝到其他目录下,编译时会报文件路劲错误,可以执行4、5重新构建。

二、页面展示

1)iOS - 通过 FlutterEngineGroup 创建多引擎页面。

static FlutterEngineGroup *engineGroup = [[FlutterEngineGroup alloc] initWithName:@"EngineGroup" project:nil]; - (FlutterViewController *)createFlutterVC { FlutterEngine *engine = [engineGroup makeEngineWithEntrypoint:nil libraryURI:nil initialRoute:@"/HomePage"]; FlutterViewController *flutterVC = [[FlutterViewController alloc] initWithEngine:engine nibName:nil bundle:nil]; return flutterVC }

2)flutter - 在应用入口初始化页面路由。

import 'dart:ui'; import 'package:flutter/material.dart'; MaterialApp( title: 'Application', initialRoute: PlatformDispatcher.instance.defaultRouteName, routes: { '/HomePage': (context) => const HomePage(), } );

需要专业的网站建设服务?

联系我们获取免费的网站建设咨询和方案报价,让我们帮助您实现业务目标

立即咨询