原来的工程是iOS原生做的,现在有一个新的模块是用ionic做的,要把这个模块嵌入到原生的工程。
分析ionic生成的iOS原生工程,可知原生app需要通过依赖静态库工程CordovaLib来支持ionic。首先看一下ionic生成的iOS原生工程目录
下面开始配置原生app的工程:
1.拷贝Ionic生成源码文件夹的config.xml、CordovaLib、Plugins、Resource、www文件到原生工程。
2 添加工程引用cordova 和www 文件夹
3 添加库(看ionic工程自己配置)
4.在Build Settings ->Apple LLVM 7.0 – Code Generation ->No Common
Blocks改变Yes为NO。(解决文件重复)
5 add -ObjC for Other Linker Flags
6.新建一个类继承于CDVViewController,在需要跳转的入口处,切换程序的根视图控制器为当前类即可跳转到ionic页面。ionic调用原生的方法需要通过插件的方式调用。
这样基本完成配置,每次更新的话只用更新www文件夹就可以了,如果需要交互通过插件的方式交互。
另外打包的时候可能会报错, 添加头文件搜索路径 “$(OBJROOT)/UninstalledProducts/$(PLATFORM_NAME)/include"
附ionic关于iOS的几个常用命令:
增加平台:ionic platform add ios
移除平台:ionic platform rm ios
编译: ionic build ios
运行: ionic run ios