unity和ios交互就更为简单了,直接导出xcode工程,这个大家都知道怎么操作的吧,二次开发的话需要ios代码集成到unity,其实集成很简单找到导出的xcode工程里的iPhone_View.mm中的OnUnityReady()方法,unity也相当于ios中一个view,[GetAppController()showGameUI:_mainDisplay->window];加载游戏视图,这个方法在UnityAppController中,- (void)showGameUI:(UIWindow*)window,显示view为_rootView,想集成自己的view上去,addsub就可以了,具体会ios人一看就明白,不会的还是先了解下ios,交互很简单,
unity和ios交互的代码必须写在导出的工程class文件下的类中,写在其他地方调用无响应,unity调用ios
[DllImport ("__Internal")] private static extern void _hideView (); [DllImport ("__Internal")] private static extern void _DisplayingView (); [DllImport ("__Internal")] private static extern void _SendJsonData(string stringvalue); [DllImport ("__Internal")] private static extern void _RotateTrigger(int index);
unity调用ios声明接口,该传参传参数,使用时调用相应方法即可,_RotateTrigger(-1);建议大家判断设备去调用,
ios端
+(void)RotateFurnitureTo3d:(const char *)strangle { UnitySendMessage("target", "RotateFurniture", strangle); }
这是ios调用unity使用代码,在相应类里写上即可,unity已提供相应方法,
但是unity调用ios,因为unity是C#调用代码object-c不支持
extern "C" { void _SendJsonData(const char* stringvalue) { [ARDBManager storeProgramJson:stringvalue]; } }
即可实现交互,具体大家可以做个测试,不懂的随时交流,每天进步一点