Flutter混合開發(fā)

1:創(chuàng)建flutter的Module


flutterModule創(chuàng)建.jpg

2:創(chuàng)建ios應(yīng)用

3:導(dǎo)入cocopode

platform :ios, '9.0'
use_frameworks!
target 'iOS項(xiàng)目名' do
  flutter_application_path = '../flutter項(xiàng)目名/'
  eval(File.read(File.join(flutter_application_path, '.ios', 'Flutter', 'podhelper.rb')), binding)
end

4:設(shè)置iOS環(huán)境禁用bitcode
5:設(shè)置腳本使Xcode能夠編譯flutter代碼

"$FLUTTER_ROOT/packages/flutter_tools/bin/xcode_backend.sh" build
"$FLUTTER_ROOT/packages/flutter_tools/bin/xcode_backend.sh" embed

報(bào)錯(cuò)
(1)

error: module importing failed: Missing parentheses in call to 'print'. Did you mean print('Whoops! You are missing the <' + arg.argName + '> argument.')? (fblldb.py, line 98)
  File "temp.py", line 1, in <module>

文件路徑不對。改對路徑之后

Command /bin/sh failed with exit code 255
code 255bug.jpg

勾選Run script only when installing能夠正常運(yùn)行。但據(jù)說打包的時(shí)候有問題齐鲤。

(2)導(dǎo)入#import <Flutter/Flutter.h>
報(bào)文件找不到
原因:podhelper.rb文件錯(cuò)誤

def parse_KV_file(file, separator='=')
    file_abs_path = File.expand_path(file)
    if !File.exists? file_abs_path
        return [];
    end
    pods_array = []
    skip_line_start_symbols = ["#", "/"]
    File.foreach(file_abs_path) { |line|
        next if skip_line_start_symbols.any? { |symbol| line =~ /^\s*#{symbol}/ }
        plugin = line.split(pattern=separator)
        if plugin.length == 2
            podname = plugin[0].strip()
            path = plugin[1].strip()
            podpath = File.expand_path("#{path}", file_abs_path)
            pods_array.push({:name => podname, :path => podpath});
         else
            puts "Invalid plugin specification: #{line}"
        end
    }
    return pods_array
end

def flutter_root(f)
    generated_xcode_build_settings = parse_KV_file(File.join(f, File.join('.ios', 'Flutter', 'Generated.xcconfig')))
    if generated_xcode_build_settings.empty?
        puts "Generated.xcconfig must exist. Make sure `flutter packages get` is executed in #{f}."
        exit
    end
    generated_xcode_build_settings.map { |p|
        if p[:name] == 'FLUTTER_ROOT'
            return p[:path]
        end
    }
end

# If this wasn't specified, assume it's two levels up from the directory of this script.
flutter_application_path ||= File.join(__dir__, '..', '..')
framework_dir = File.join(flutter_application_path, '.ios', 'Flutter')

engine_dir = File.join(framework_dir, 'engine')
if !File.exist?(engine_dir)
    # Copy the debug engine to have something to link against if the xcode backend script has not run yet.
    debug_framework_dir = File.join(flutter_root(flutter_application_path), 'bin', 'cache', 'artifacts', 'engine', 'ios')
    FileUtils.mkdir_p(engine_dir)
    FileUtils.cp_r(File.join(debug_framework_dir, 'Flutter.framework'), engine_dir)
    FileUtils.cp(File.join(debug_framework_dir, 'Flutter.podspec'), engine_dir)
end

pod 'Flutter', :path => engine_dir
pod 'FlutterPluginRegistrant', :path => File.join(framework_dir, 'FlutterPluginRegistrant')

symlinks_dir = File.join(framework_dir, '.symlinks')
FileUtils.mkdir_p(symlinks_dir)
plugin_pods = parse_KV_file(File.join(flutter_application_path, '.flutter-plugins'))
plugin_pods.map { |r|
    symlink = File.join(symlinks_dir, r[:name])
    FileUtils.rm_f(symlink)
    File.symlink(r[:path], symlink)
    pod r[:name], :path => File.join(symlink, 'ios')
}

# Ensure that ENABLE_BITCODE is set to NO, add a #include to Generated.xcconfig, and
# add a run script to the Build Phases.
post_install do |installer|
    installer.pods_project.targets.each do |target|
        target.build_configurations.each do |config|
            config.build_settings['ENABLE_BITCODE'] = 'NO'
            next if  config.base_configuration_reference == nil
            xcconfig_path = config.base_configuration_reference.real_path
            File.open(xcconfig_path, 'a+') do |file|
                file.puts "#include \"#{File.realpath(File.join(framework_dir, 'Generated.xcconfig'))}\""
            end
        end
    end
end

找了個(gè)對的黏貼過去重新podinstall好了

(3)

Command PhaseScriptExecution failed with a nonzero exit code

參照:修改編譯方式解
(4)

Permission denied

Flutter更新到1.9.x版本iOS運(yùn)行報(bào)錯(cuò)問題,Permission denied

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末赴穗,一起剝皮案震驚了整個(gè)濱河市炕吸,隨后出現(xiàn)的幾起案子姿染,更是在濱河造成了極大的恐慌背亥,老刑警劉巖,帶你破解...
    沈念sama閱讀 206,311評論 6 481
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件悬赏,死亡現(xiàn)場離奇詭異狡汉,居然都是意外死亡,警方通過查閱死者的電腦和手機(jī)闽颇,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 88,339評論 2 382
  • 文/潘曉璐 我一進(jìn)店門轴猎,熙熙樓的掌柜王于貴愁眉苦臉地迎上來,“玉大人进萄,你說我怎么就攤上這事捻脖∪袂停” “怎么了?”我有些...
    開封第一講書人閱讀 152,671評論 0 342
  • 文/不壞的土叔 我叫張陵可婶,是天一觀的道長沿癞。 經(jīng)常有香客問我,道長矛渴,這世上最難降的妖魔是什么椎扬? 我笑而不...
    開封第一講書人閱讀 55,252評論 1 279
  • 正文 為了忘掉前任,我火速辦了婚禮具温,結(jié)果婚禮上蚕涤,老公的妹妹穿的比我還像新娘。我一直安慰自己铣猩,他們只是感情好揖铜,可當(dāng)我...
    茶點(diǎn)故事閱讀 64,253評論 5 371
  • 文/花漫 我一把揭開白布。 她就那樣靜靜地躺著达皿,像睡著了一般天吓。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發(fā)上峦椰,一...
    開封第一講書人閱讀 49,031評論 1 285
  • 那天龄寞,我揣著相機(jī)與錄音,去河邊找鬼汤功。 笑死物邑,一個(gè)胖子當(dāng)著我的面吹牛,可吹牛的內(nèi)容都是我干的滔金。 我是一名探鬼主播色解,決...
    沈念sama閱讀 38,340評論 3 399
  • 文/蒼蘭香墨 我猛地睜開眼,長吁一口氣:“原來是場噩夢啊……” “哼鹦蠕!你這毒婦竟也來了冒签?” 一聲冷哼從身側(cè)響起在抛,我...
    開封第一講書人閱讀 36,973評論 0 259
  • 序言:老撾萬榮一對情侶失蹤钟病,失蹤者是張志新(化名)和其女友劉穎,沒想到半個(gè)月后刚梭,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體肠阱,經(jīng)...
    沈念sama閱讀 43,466評論 1 300
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 35,937評論 2 323
  • 正文 我和宋清朗相戀三年朴读,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了屹徘。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片。...
    茶點(diǎn)故事閱讀 38,039評論 1 333
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡衅金,死狀恐怖噪伊,靈堂內(nèi)的尸體忽然破棺而出簿煌,到底是詐尸還是另有隱情,我是刑警寧澤鉴吹,帶...
    沈念sama閱讀 33,701評論 4 323
  • 正文 年R本政府宣布姨伟,位于F島的核電站,受9級特大地震影響豆励,放射性物質(zhì)發(fā)生泄漏夺荒。R本人自食惡果不足惜,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 39,254評論 3 307
  • 文/蒙蒙 一良蒸、第九天 我趴在偏房一處隱蔽的房頂上張望技扼。 院中可真熱鬧,春花似錦嫩痰、人聲如沸剿吻。這莊子的主人今日做“春日...
    開封第一講書人閱讀 30,259評論 0 19
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽和橙。三九已至,卻和暖如春造垛,著一層夾襖步出監(jiān)牢的瞬間魔招,已是汗流浹背。 一陣腳步聲響...
    開封第一講書人閱讀 31,485評論 1 262
  • 我被黑心中介騙來泰國打工五辽, 沒想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留办斑,地道東北人。 一個(gè)月前我還...
    沈念sama閱讀 45,497評論 2 354
  • 正文 我出身青樓杆逗,卻偏偏與公主長得像乡翅,于是被迫代替她去往敵國和親。 傳聞我的和親對象是個(gè)殘疾皇子罪郊,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 42,786評論 2 345

推薦閱讀更多精彩內(nèi)容