一、Android平台:

   1、android调用Unity3d:


    继承:public class MainActivity extends UnityPlayerActivity


    调用统一方式:UnityPlayer.UnitySendMessage("GameObject""ShowText"“参数”);  


    2、Unity3d调用android:

   public void MyShowDialog()  
   {  
     // Android的Java接口    
     AndroidJavaClass jc = new AndroidJavaClass("com.unity3d.player.UnityPlayer");  
     AndroidJavaObject jo = jc.GetStatic<AndroidJavaObject>("currentActivity");  
     // 参数    
     string[] mObject = new string[2];  
     mObject[0] = "数据0";  
     mObject[1] = "数据1";  
      // 调用方法    
     string ret = jo.Call<string>("ShowText", mObject);  
   }  


  

二、iOS平台:


   1、iOS调用Unity3d:


   继承:Unity3D环境下在Asset目录下建mm类通过Unity3d编译导出iOS工程后编写自己的MyMainViewController

eg:mm为:U3DAppControllerView:UnityAppController,h和mm文件内容如下:


@property (nonatomic,strong)UINavigationController *navc;
-(void)createUI;  
@end  

-(void)createUI{  
    _rootController = [[UIViewController alloc]init];  
    _rootView = [[UIView alloc]initWithFrame:[UIScreenmain Screen].bounds];  
    _rootController.view =_rootView;  
    MyMainViewController *vc = [[MyMainViewController alloc]init];  
    self.navc = [[UINavigationController alloc]initWithRootViewController:vc];  
    [_rootView addSubview:self.navc.view];  
    _window.rootViewController =_rootController;  
    [_window bringSubviewToFront:_rootView];  
    [_window makeKeyAndVisible];  
}   
@end  

IMPL_APP_CONTROLLER_SUBCLASS(U3DAppControllerView)  

   调用:UnitySendMessage("iOSSendMessageToUnity""moveGameObject"""); 
   其中:  //参数1 场景中模型的名字 
     //参数2 脚本名称方法 
     //参数3 unity传递一个char类型的数据 
  


2、Unity3d调用iOS:

      Unity3D工程中新建脚本 public class UnitySendMessageToiOS : object

//导出按钮以后将在xcode项目中生成这个按钮的注册 
//iOS中的注册格式 

[DllImport("__Internal")] 
private static extern void _moveSceneXBtn(); 

public static void moveSceneIniOS(){ 
if (Application.platform != RuntimePlatform.OSXEditor) { 
_moveSceneXBtn (); 
}  
}  
}   


   调用: UnitySendMessageToiOS.moveSceneIniOS();  


更多相关文章

  1. android横竖屏总结
  2. 对比onSaveInstanceState和onRestoreInstanceState
  3. android-2.2以下杀进程方法:restartPackage();
  4. android 创建动态View
  5. Android开机自动启动服务
  6. cocos2dx 调用java层代码
  7. Unity和Android通信系列文章1——总览
  8. ❤️【Android精进之路-04】Android核心组件Activity(Activity的生
  9. 分享Android(安卓)KTX + Kotlin协程 组合使用

随机推荐

  1. 微信检查被删好友(Android(安卓)Accessibi
  2. PackageInstaller 5.0源码分析静默安装与
  3. Android(安卓)P的系统架构
  4. Android(安卓)中 View移动总结:ViewDragHe
  5. Android(安卓)Camera API/Camera2 API 相
  6. Android下使用TCP/IP协议实现断点上传
  7. android UI进阶之实现listview的下拉加载
  8. Android(安卓)OkHttp(一)源码出发探寻执行
  9. React-Native系列Android——Native与Jav
  10. 历年阿里巴巴面试题集,蚂蚁金服Android面