unity与ios交替

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];
    }
}

您可以互动。详细资料也可以是一个测试,我不明白,在任何时候交换。每天进步一点点


原文地址:https://www.cnblogs.com/mengfanrong/p/5025008.html