Ios开发教程(ios开发教程跟lebus学)

此文章用于记录Kraken开发过程,所以适合有iOS原生开发经验和hybrid开发经验的朋友。

随着Flutter开发的热门,弊端也凸显,大家希望用更简单和更轻量的方式来进行开发,最好能用flutter渲染,用js开发,于是出现了tresh和kraken等。

对thresh感兴趣的可查看:「链接」

由于前期使用了Weex,而Kraken有很多相似之处,所以我们这次选择了Kraken。

大部分情况下,我们没有精力来重新开发,希望在现有项目上加入混合开发模式,所以现在着重说一说如何向现有原生项目添加Kraken支持。新建kraken和flutter项目的教程很多,查看官网文档即可。

使用Kreken需要引入的库包含对Flutter的支持库和Kreken的库,可直接引入工程或者用Pod进行库管理,建议使用Pod管理方便后续多个项目使用。

具体方法可参考文章:

Flutter 中文文档 – Flutter 中文资源 | 将 Flutter module 集成到 iOS 项目

一.需要添加Flutter支持的库

Flutter.framework

App.framework

FlutterPluginRegistrant.framework

二.添加Kreken相关库

kraken.framework

connectivity.framework

device_info.framework

kraken_bridge.framework

Reachability.framework

shared_preferences.framework

vibration.framework

将要遇到的问题是,从Flutter和Kraken官网拿到的是xcframework,可使用如下命令在framework同一级目录将xcframework转换成兼容模拟器和真机的framework:

framework_name=【framework名】 && \
release_sim_framework=./$framework_name.xcframework/ios-x86_64-simulator/$framework_name.framework && \
release_sim_lib=$release_sim_framework/$framework_name && \
release_os_framework=./$framework_name.xcframework/ios-arm64_armv7/$framework_name.framework && \
release_os_lib=$release_os_framework/$framework_name && \
# lipo -remove arm64 $release_sim_lib -o $release_sim_lib && \
lipo -create -output $framework_name $release_sim_lib $release_os_lib && \
cp -R $release_os_framework ./$framework_name.framework && \
rm -rf ./$framework_name.framework/$framework_name && \
mv $framework_name ./$framework_name.framework/$framework_name && \
rm -rf $framework_name

Podfile中加入引用:

inhibit_all_warnings!

platform :ios, '9.0'

target 'Kraken_Example' do
  pod 'libKraken', :path => '/Users/xxx/libKraken'
end

build能顺利通过,则此时原生引用已经告一段落。

Kraken支持Vue/React/Rax,对于前端和App开发人员来说是一种福利,三种开发者的创建方法见官网:

「链接」

编译Kraken

在Kraken根目录下执行yarn build或者npm run build后,在dist目录下会生成一个app.js文件:

Ios开发教程(ios开发教程跟lebus学)

此时Kraken项目创建也成果告一段落,篇幅问题,如何使用js文件将在下一篇文章中继续。

本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至 sumchina520@foxmail.com 举报,一经查实,本站将立刻删除。
如若转载,请注明出处:https://www.dasum.com/174723.html