說明
由于使用VSCode和iOS進行聯(lián)調(diào)步驟過于繁瑣,所以這里聯(lián)調(diào)所用到的開發(fā)工具為Android Studio
聯(lián)調(diào)步驟
1.flutter通過Cocoapods本地導入方式進行集成
集成方式可參考《Flutter初探--iOS項目集成flutter》
Podfile中進行如下配置:
flutter_application_path = 'path/to/my_flutter/'
load File.join(flutter_application_path, '.ios', 'Flutter', 'podhelper.rb')
target 'Example' do
install_all_flutter_pods(flutter_application_path)
end
target 'ExampleTests' do
install_all_flutter_pods(flutter_application_path)
end
2.執(zhí)行pod install 或 pod update安裝成功
3.運行Xcode項目到指定設(shè)備
4.執(zhí)行flutter attach
當iOS項目運行起來以后,執(zhí)行flutter attach
有兩種方式
- 在Android Studio右上角點擊帶flutter圖標的小手機按鈕
- 在終端執(zhí)行
flutter attach
命令輸出后會輸出以下內(nèi)容
Checking for advertised Dart observatories...
Checking for available port on com.example.xxx._dartobservatory._tcp.local
Checking for authentication code for com.example.xxx._dartobservatory._tcp.local
Syncing files to device XXX的 iPhone...
當Syncing files to device XXX的 iPhone...出現(xiàn)時表示代碼已經(jīng)成功同步到設(shè)備上了
需要注意的是:當有多個設(shè)備時(iPhone或模擬器)執(zhí)行flutter attach命令,會讓你指定設(shè)備,這時執(zhí)行flutter attach -d "device_id"保證和iOS項目運行為同一個設(shè)備即可
5.斷點調(diào)試
在AndroidStudio打上斷點即可進行調(diào)試
6.熱重載
聯(lián)調(diào)過程是支持熱重載的,例如修改一些文案或UI布局等,但是有些條件限制,具體內(nèi)容可看flutter中文網(wǎng)上的使用熱重載
以下情況需要重新pod update且重復上述過程(僅供參考,以實際情況為準)
- 修改pubspec.ymal中的配置,需要執(zhí)行
flutter packages get - 新增文件或資源
以下情況需要重新運行iOS項目
- 修改main.dart main函數(shù)中初始化的內(nèi)容
- 修改全局使用的靜態(tài)變量
...