unity和ios的相互作用是更简单的。直接出口xcodeproject,这个大家都知道如何操作,如果需要二次开发ios码成unity,事实上,整合非常easy找到出口xcodeproject内iPhone_View.mm中间OnUnityReady()方法。unityios中一个view,[GetAppController()showGameUI:_mainDisplay->window];载入游戏视图,这种方法在UnityAppController中,- (void)showGameUI:(UIWindow*)window,显示view为_rootView,想集成自己的view上去,addsub就能够了。详细会ios人一看就明确。不会的还是先了解下ios。交互非常easy,合并完project以后,以后再改动unity导出的xcodeproject,直接替换合并project的Data和Libraries目录就能够了,不用每次都合并。改动ios代码直接在合并project改动就可以
unity和ios交互的代码必须写在导出的projectclass文件下的类中,写在其它地方调用无响应,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]; } }
您可以互动。详细资料也可以是一个测试,我不明白,在任何时候交换。每天进步一点点