1、第一步:
在iOS项目的同级目录下创建flutter工程
flutter create -t module flutter_library
2、第二步:
cd flutter_library
flutter build ios —debug --no-codesign
或
flutter build ios --release --no-codesign
等待编译完成
3、第三步:
在iOS项目中添加(加粗部分)
platform :ios,'9.0'
flutter_application_path ='../flutter_library/' #相对目录
load File.join(flutter_application_path,'.ios','Flutter','podhelper.rb')
target 'FlutteriOS' do
use_frameworks!
install_all_flutter_pods(flutter_application_path)
# Pods for FlutteriOS
end
然后pod install
这时候基本完成了配置,具体就是iOS怎么调用flutter的项目
4、第四步:
#import
@interface AppDelegate : FlutterAppDelegate
@property (nonatomic,strong) FlutterEngine *flutterEngine;
@end
2、
#import
- (BOOL)application:(UIApplication*)applicationdidFinishLaunchingWithOptions:(NSDictionary*)launchOptions {
self.flutterEngine = [[FlutterEngine alloc] initWithName:@"io.flutter" project:nil];
[self.flutterEngine runWithEntrypoint:nil];
[GeneratedPluginRegistrant registerWithRegistry:self.flutterEngine]; //如果你需要用到Flutter插件时
return YES;
}
5、第五步:
FlutterViewController* flutterViewController = [[FlutterViewController alloc] initWithProject:nil nibName:nil bundle:nil];
flutterViewController.navigationItem.title=@"Flutter Demo";
[self presentViewController:flutterViewController animated:YES completion:nil];
具体图如下:
备注:
如果报错:
dyld: Library not loaded: @rpath/App.framework/App.....
解决方案:
1、卸载cocoapods
sudo gem uninstall -n /usr/local/bin cocoapods cocoapods-core cocoapods-deintegrate cocoapods-downloader cocoapods-plugins cocoapods-search cocoapods-stats cocoapods-trunk cocoapods-try
2、卸载 ruby-macho
sudo gem uninstall ruby-macho
3、重新安装pod
sudo gem install -n /usr/local/bin cocoapods
4、cd到iOS项目目录下删除原有的pods、Podfile.lock、.xcworkspace,重新pod install