[Unity3D] U3D实现与iOS交

发布时间:2019-09-21 11:10:07编辑:auto阅读(1786)

    在开发中有很多情况下会用到U3D调用iOS中的函数。

    例如在U3D中,我们需要调用到一个iOS 的函数,例如:广告插件。(都有现成的代码大家只需要调用下的那种。)
    这个时候我们就需要在U3D中写一个方法。这个方法去调用iOS中的函数。
    U3D中写法如下:
    C#版:
    [DllImport("__Internal")]
    private static extern void _UseIOS();

    void U3DUseIOS()
    {
      if(Application.platform == RuntimePlatform.IPhonePlayer) // 如果当前平台是iOS
      {
          _UseIOS(); // 调用_UseIOS方法
       }
    }

    这段代码需要导入 using System.Runtime.InteropServices; 这个头文件。

    这段代码中 _UseIOS() 这个方法名 就是我们要在IOS中实现的方法名。  
    U3DUseIOS()这个方法 就是想在U3D中调用的方法名。

    下面是iOS中的写法:

    extern "C"
    {
        void _UseIOS()
        {
           //添加你要调用的代码
         }
    }


    上面这段代码 就是在IOS中实现U3D中声明的_UseIOS() 方法。 这段代码可以添加到任何地方吧。。 不过我添加到AppController.mm里了。。 比较懒。

    好了今天就写到这里,有什么错误的地方大家请留言。

关键字