码迷,mamicode.com
首页 > 移动开发 > 详细

Unity与IOS交互

时间:2016-06-08 00:20:20      阅读:522      评论:0      收藏:0      [点我收藏+]

标签:

转自:http://www.cnblogs.com/alongu3d/p/3674174.html

 环境:Mac os 10.9.2  Unity 4.2.1f4   Xcode 5.0.2

            Unity IOS的交互我写过一个教程,当时我用的是Unity4.0,和现在的版本不太一样了!

            链接是http://www.cnblogs.com/alongu3d/p/3279277.html

            1.首先在unity的脚本中定义如下

                技术分享

                 其中,CallU3D是静态方法,供unity3d调用的!

               2.导出ios工程

                  技术分享

                 刚才我们在unity3d中定义的方法CallIOS,在IOS的工程目录中的RegisterMonoModules.cpp中会有CallIOS()这个方法的!

                 如果这儿没有显示我们在unity3d中定义的方法,那么很可能是这儿写错了[DllImport("__Internal")]注意是两个下划线

                 大家仔细看  CallIOS()方法的上面一句注释  !TARGET_IPHONE_SIMULATOR非模拟器,必须在真机下运行,才能调用IOS中自定义写的方法!

                 3.实现CallIOS方法

                   

技术分享
extern "C"
{
    //在点击unity中按钮的时候,会调用这个方法,并且弹出一个窗体
    void    CallIOS()
    {
        CustomViewController* myview=[[CustomViewController alloc]init];
        [_mainDisplay->window  addSubview:myview.view];
    }
}
技术分享

 这个方法我写在了UnityAppController.mm方法中,_mainDisplay->window是静态的,可以在这儿添加视图!

                4.unity中调用ios的方法

                   

-(IBAction)clickbutton:(id)sender
{
    //参数1 在unity中层次列表中的物体 参数2 Cube物体上的脚本的Rot方法  参数3 是参数
    UnitySendMessage("Cube", "Rot", "");
}

            在点击视图上的按钮的时候,给unity发送消息,第一个参数是unity中层次视图中的物体,第二个参数是unity中层次视图中的物体所携带的脚本的

 Rot方法,第三个参数是 Rot方法的参数!

                技术分享

              5.下一篇说一下如何用ios账号发布真机并且测试!

Unity与IOS交互

标签:

原文地址:http://www.cnblogs.com/feiyu-mdm/p/5568657.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!