unity3D-iOS工程整合爬过的坑~

好久好久没有写博了~ 最近换了一份有意思的新工作,也是当下最热门的新技术,AR技术。笔者之前一直是做iOS开发的,接触了一门全新的技术,兴奋了好久好久,笔者也快转行做unity3D的开发了~AR技术真的挺有意思,不过短短的一个月时间遇到的坑比之前做iOS开发三年遇到的坑还多~ 好了,本文主要讲述unity3D导出的工程和iOS工程整合的问题~也是笔者做一个记录吧~当然网上也有很多文章写 这个的~ 不过我试过所有的文章里面讲的方法,都没有成功,最后还是在国外一个老外的视频里面找到了方法~ 不过也没有成功,还有许许多多的小坑~ 下面开始讲述正文吧~

第一步unity3D导出iOS工程~

如何导出iOS工程,查看网上教程~导出后的文件目录如下

第二步将一些文件导入自己的工程项目中

将Classes 和 Libraries 文件夹以 下面的方式导入自己的工程中

将Data 文件夹以下面的方式导入工程中

第三步删除Native下所有.h文件的引用

删除Native下所有.h文件的引用,注意里面不仅仅只有.h 文件,,还有.cpp文件

第四步删除libil2cpp引用~

第五步添加引用库

添加引用库,注意有三个是optional ~

第六步Build Settings

在 other Linker Flags 添加

-weak_framework CoreMotion -weak-lSystem

在Header Search Path 添加下面这些头文件引用~

${SRCROOT}/../../iOS/unity2iOS
${SRCROOT}/../../iOS/unity2iOS/Classes
${SRCROOT}/../../iOS/unity2iOS/Classes/Native
${SRCROOT}/../../iOS/unity2iOS/Libraries
${SRCROOT}/../../iOS/unity2iOS/Libraries/libil2cpp/include
${SRCROOT}/../../iOS/unity2iOS/Libraries/Plugins/iOS

在Library Search Path 中添加

${SRCROOT}/../../iOS/unity2iOS
${SRCROOT}/../../iOS/unity2iOS/Libraries
${SRCROOT}/../../iOS/unity2iOS/Libraries/Plugins/iOS

在other C Flags 中添加 -DINIT_SCRIPTING_BACKEND=1 同是在 other C++ Flags中出现

改为C99

改PCH

C++做如下设置

跟着下面的图片做设置更改

在user-Defined 添加如下

GCC_THUMB_SUPPORT NO
GCC_USE_INDIRECT_FUNCTION_CALLS NO
UNITY_RUNTIME_VERSION 5.3.4f1
UNITY_SCRIPTING_BACKEND il2cpp

第七步修改PCH文件

把Classes下面的Perfix.pch中的代码全部拷贝到自己项目的PCH 并且在自己的项目的PCH 中添加 #import "UnityAppController.h"

当你走完上面七步之后,下面才是真正的坑开始的地方~ 笔者使用的是unity做Vuforia的开发,其中涉及到的坑相信大家也被坑了好久~ 不过最后笔者得出了两行代码~ 解决了一切问题~

我在unityAppController 中创建了一个Appdelegate,并且把unityView 和Window 传过去了~ 代码后面有人问到再补上~ 欢迎有遇到同样坑的小伙伴在下面提问题,笔者会定时更新文章并把解决问题附上~

unity3D-iOS工程整合爬过的坑~的更多相关文章

  1. GJM : Unity3D HIAR -【 快速入门 】 六、导出 iOS 工程

    导出 iOS 工程 在开始之前,请务必先保存您的工程.由于 Unity 无法直接生成 ipa 文件,您需要先导出 iOS 工程文件,然后通过 Xcode 编译生成. Step 1. 选择平台 在 Un ...

  2. 给iOS工程增加Daily Build

    给iOS工程增加Daily Build  前言 Daily Build 是一件非常有意义的事情,也是敏捷开发中关于 "持续集成" 的一个实践.Daily Build 对于开发来说有 ...

  3. iOS 工程中文件变成红色是什么情况

    iOS 工程中文件变成红色是原有的文件路径改变了,系统找不到了.

  4. ios外包公司—北京动点软件分享:IOS工程自动打包并发布脚本实现

    前言 IOS的开发过程中,当需要给测试人员发布测试包的时候,直接使用xcode来做的效率是非常低下的.尤其是当有一点小改动需要重新出包时,那简直是个折磨的人的工作.通过一番研究后,遂决定写一系列脚本, ...

  5. ios 工程图片清理shell

    #!/bin/shecho "随意删除@2x图片可能会引起错误 因为ios工程会更加前缀和分辨率自己找到@2x的图片 所以删除@2x图片时要慎重"read -n1 -p  &quo ...

  6. Unity3d导入工程出现错误“Creating unique file”的解决方法

    Unity3d导入工程出现错误“Creating unique file:creating file Temp/tempFile failed.Please ensure there is enoug ...

  7. Unity3d IOS中的IGUI控件

    Unity3d IOS中的IGUI控件 @灰太龙  群63438968 我讲一下IOS中用的UI,我们采用IGUI,需要使用IGUI的高版本,在Unity3d 4.2中也可以使用的! 之前IGUI有个 ...

  8. iOS 工程自动化 - 思路整理

    4 月份参加 2017@Swift 大会的时候有幸听到了 @zesming 大佬关于美团组件化的 Topic,有一张图印象特别深刻. 来自 @zesming 大佬 后来跟 @zesming 大佬沟通怎 ...

  9. Springboot整合Websocket遇到的坑

    Springboot整合Websocket遇到的坑 一.使用Springboot内嵌的tomcat启动websocket 1.添加ServerEndpointExporter配置bean @Confi ...

随机推荐

  1. H5 表单

    伴随着互联网富应用以及移动开发的兴起,传统的Web表单已经越来越不能满足开发的需求,HTML5在Web表单方向也做了很大的改进,如拾色器.日期/时间组件等,使表单处理更加高效. 1.1新增表单类型 - ...

  2. .net 下新版highcharts本地导出图片bug处理

    最近公司要用到highcharts这个插件来生成图表,所以我花了点时间研究了下. 现在最新的版本是3.0.2,这js插件居多优点就不比多说了,demo官网上也很详细.但是优点不爽的地方是,导出图片这个 ...

  3. 异步网络加载开源框架AsyncHttpClient使用

    AsyncHttpClient是异步的,但是有时候我们需要得到请求的结果集来返回给某个函数,由于是异步的,所以不能够直接return会去,所以可以定义一个interface来给调用AsyncHttpC ...

  4. u盘写入Ubuntu后容量变小,恢复方式

    具体请参考网址:http://jingyan.baidu.com/article/59703552e754e48fc00740ed.html 经过验证,方法是可以的

  5. SQL Server 2008, 2008 R2, 2012 and 2014 完全支持TLS1.2加密传输

    SQL Server 2008, 2008 R2, 2012 and 2014 完全支持TLS1.2加密传输 微软高兴地宣布所有主流SQL Server客户端驱动和SQL Server发行版已经支持T ...

  6. IOS9.0中hash值的bug与解决方案

    事件起因 事情是这样的:产品上线发布,突然出现了问题.运营Gg过来反应,当场给露珠演示,运营同事的手机是iphone,bug确实是存在的.奇怪的是露珠用了其他iphone手机(借别人的,露珠的是吊死安 ...

  7. SQLite3

    记录一个基础的IOS下SQLite的例子: @implementation ViewController - (void)viewDidLoad { [super viewDidLoad]; NSAr ...

  8. SpringMVC拦截器详解[附带源码分析]

    目录 前言 重要接口及类介绍 源码分析 拦截器的配置 编写自定义的拦截器 总结 总结 前言 SpringMVC是目前主流的Web MVC框架之一. 如果有同学对它不熟悉,那么请参考它的入门blog:h ...

  9. 大话JS面向对象之开篇万物皆对象------(ATM取款机引发的深思)

    一,总体概要 OO(面向对象)概念的提出是软件开发工程发展的一次革命,多年来我们借助它使得很多大型应用程序得以顺利实现.如果您还没有掌握并使用OO进行程序设计和开发,那么您无疑还停留在软件开发的石器时 ...

  10. TODO:关于自媒体博客改名

    TODO:关于自媒体博客改名 1.微信公众号:ludong86 个人类帐号一个自然年内可主动修改两次名称 2.企鹅号 不能改帐号名称 3.简书 名称可以随意修改,但是个人主页是系统自动生成的. 4.今 ...