位置: 编程技术 - 正文

Unity 从iOS应用中,启动一个Unity App(unity导出ios项目到iphone)

编辑:rootadmin
从iOS应用中,启动一个Unity App

推荐整理分享Unity 从iOS应用中,启动一个Unity App(unity导出ios项目到iphone),希望有所帮助,仅作参考,欢迎阅读内容。

文章相关热门搜索词:unity导出ios项目到iphone,unity发布到ios,unity导出ios项目到iphone,unity的apply在哪,unity的apply在哪,unity ios framework,unity ios framework,unity 调用ios,内容如对您有帮助,希望把文章链接给更多的朋友!

Start a Unity app from inside a native iOS app

1. 首先,从Unity中将Unity项目导出Xcode工程。(因为Unity生成的工程目录比较麻烦,没有研究,所以从Unity生成工程的基础上进行开发)

2. 生成的Xcode工程包含以下文件。

  其中main.mm文件,是项目的入口文件。

  从代码来看。Unity是使用红色框中的文件(AppController)启动,没有用到蓝色框中的文件。所以我们可以直接使用(iPhone_targer2AppDelegate)

  

3. 修改入口文件,main.mm

  将启动类,由“AppController”改为“NSStringFromClass([iPhone_target2AppDelegate class])”

NSAutoreleasePool * pool = [NSAutoreleasePool new];// UIApplicationMain(argc, argv, nil, @"AppController");UIApplicationMain(argc, argv, nil, NSStringFromClass([iPhone_target2AppDelegateclass]));[pool release];

4. 在“iPhone_target2AppDelegate”中,就可以正常的使用我们iOS项目了。

- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions{ self.window = [[UIWindow alloc] initWithFrame:[[UIScreen mainScreen] bounds]]; [self.window setRootViewController:[[MyViewController alloc] initWithNibName:@"MyViewController" bundle:nil]]; [self.window makeKeyAndVisible]; return YES;}Unity 从iOS应用中,启动一个Unity App(unity导出ios项目到iphone)

5. 接下来就是本文的重点了,怎么启动Unity项目呢。

[[[AppController alloc] init] startUnity:[UIApplication sharedApplication]];

6. 从Unity项目退出,返回iOS项目。在AppController.mm中加入对Unity的响应,代码如下

  这里使用了Unity和Object-C之间的代码交互。详见: "C" { float doExitSelector() { /* // 使用这个代码会导致应用Crash // ReleaseViewHierarchy(); // UnityCleanup(); */ // 所以在这里,使用以下方法:讲Unity暂停,隐藏项目,将iOS项目Window显示 UnityPause(true); _didResignActive = YES; Profiler_UninitProfiler(); [[[UnityGetMainWindow() rootViewController] view] setHidden:YES]; [[[iPhone_target2AppDelegate shareApplicationDelegate] window] makeKeyAndVisible]; return 0.0f; }}

7. 最后注意一点,startUnity方法只能使用一次。多次调用同样会导致应用Crash,并报错:“should not be reached at domain.c”。

  如果需要在Unity和iOS之间多次切换的话,可以在AppController.mm中加入以下方法

- (void)restartUnity { [[[UnityGetMainWindow() rootViewController] view] setHidden:NO]; [UnityGetMainWindow() makeKeyAndVisible]; if (_didResignActive) UnityPause(false); _didResignActive = NO;}

  在需要的地方调用:

- (void)onClickTest:(id)sender { if (appController) { [appController restartUnity]; }else { appController = [[AppController alloc] init]; [appController startUnity:[UIApplication sharedApplication]]; }}

  

PS: 有错轻拍

  开发工具版本:Unity 4.0 Xcode 4.6

分类: Unity

Vuforia学习实践笔记(一) 前言Vuforia增强现实SDK,是高通推出的针对移动设备增强现实应用的软件开发工具包,它能够根据开发者设定的目标对象,例如二维图片、三维模型提取

【Unity_uGUI】如何让ui遮挡点击事件使之不影响3D世界

[Unity3D]Unity中的Time 要求实现动态生成管道,一直没有想到比较好的方法,之前跟着教程做的时候也用到了Time类,这次又详细查了查,总算解决了问题。1.Time.time此帧开始

标签: unity导出ios项目到iphone

本文链接地址:https://www.jiuchutong.com/biancheng/381427.html 转载请保留说明!

上一篇:Unity NGUI Tween的用法

下一篇:【Unity_uGUI】如何让ui遮挡点击事件使之不影响3D世界(unity ugu)

  • 个人所得税人员信息采集验证不通过
  • 对方公司为什么一定要专票
  • 所得税税负率的计算公式中营业收入含不含税
  • 印花税会计分录怎么做
  • 退回多交城建税税金会计分录
  • 工会经费与残保金的取数是一致吗
  • 红字发票信息表盖章位置图片
  • 三方合同怎么盖章
  • 金税盘纳税申报流程
  • 股息红利增值税和企业所得税
  • 增值税留抵税额抵减欠税
  • 员工工资薪金会计如何核算?
  • 行政事业单位拨入经费
  • 公司注销后会计凭证保管年限
  • 付的押金能要回来吗
  • 机关和事业单位哪个好
  • 公益性捐赠全额扣除2020年第9号文件
  • 某企业原材料采用实际成本核算,2019年6月
  • 现金收取业务办理流程
  • 餐饮企业收到现金抵用券会计分录
  • 微信支付有优惠 系统异常
  • 税号最后一位字母T
  • 土地使用税能计入土地转让的土地增值税清算吗
  • 小规模减半征收印花税的政策
  • 银行没有流水怎么开证明
  • 2019年以后转登记为小规模纳税人有无时间要求?
  • 公司客户招待费用标准
  • 总资产净利率与权益乘数的关系
  • 什么是应付工资金额
  • 公司决议效力确认纠纷
  • 信息技术服务费发票
  • 公司装修待摊费怎么算
  • mac笔记本装了双系统后打开苹果系统和原来一样吗
  • PHP:Memcached::getOption()的用法_Memcached类
  • 营改增项目
  • 进口付汇流程
  • 经营特许权
  • 落日时光
  • echarts柱状图立体
  • vue自定义指令生命周期
  • vue中proxy代理?
  • php时间戳转换成时间
  • phpexcel导入
  • php微信公众号开源框架
  • 应交税费如何调整
  • 旅行社代订酒店如何入账
  • 看望职工家属可以计入福利费吗
  • 已勾选未确认怎么取消
  • php composer 常用库
  • 进项税额抵减额怎么算
  • 享受残疾人增值服务的是
  • 房地产公司收房款怎么分录
  • 公司组织出国旅游很差吗
  • 什么是代扣代缴税收缴款凭证
  • 主营业务利润的会计分录
  • 销售材料购买方会计分录
  • 纳税调整收入包括哪些
  • 营改增后租金收入交什么税
  • 高速etc发票如何打印
  • 主营业务成本怎么核算
  • 银行记账本怎么填写
  • win10屏幕自动变黄
  • ultraiso刻录音乐到dvd
  • 笔记本出厂预装系统
  • windows10x预览版
  • windows的fn键
  • centos权限不够怎么办
  • bootstrap怎么用
  • 游戏开发unity3d
  • 安卓微博评论界面图片
  • linux定时执行任务
  • node socket hang up
  • shell脚本查找
  • python爬虫模拟浏览器
  • jquery自定义函数
  • Android ViewPager+Fragment滑动选项卡,tab点击选项卡
  • 杭州市税务局副局长
  • 佛山市国家税务局科长陈科长
  • 河南省2020年12月纳税申报截止日期
  • 什么叫企业改制重组
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

    网站地图: 企业信息 工商信息 财税知识 网络常识 编程技术

    友情链接: 武汉网站建设