最近因为跟小伙伴在制作一个App参加比赛,由于有unity的开发经验,突发奇想的想要在Android应用中内嵌unity提供模型展示的功能。

为此,我们查阅了不少资料。大多发现的是unity中内嵌Android的文章。Android内嵌unity的似乎大多是从Android中导出Jar包再导入unity中开发的,这样似乎对于我们主要开发Android应用来说有些繁复=。=于是后来跟小伙伴研究许久,发现unity可以export出Android的工程文件。

=.=于是打算写一个简易的说明文字记录一下,今后可能会再次用到。


实现步骤如下

  • 从unity中export出Android的工程文件
export出安卓工程文件
  • 将Android工程文件中的asset下的bin、libs下的jar包、以及java代码复制到所开发的Android应用的工程下的相应位置
一些相应文件 一些相应文件 一些相应文件
  • 在Android工程中继承UnityPlayerActivity类,用于显示unity场景的Activity

  • 利用下列代码将unity视图添加到android视图中

View mView=mUnityPlayer.getView();

mParent.addView(mView);

  • 然后使用UnityPlayer的UnitySendMessage函数,向unity中的指定物体,调用指定的函数,传入指定的参数

UnityPlayer.UnitySendMessage(“Main Camera” , “setfdjxn” , “xxx”);

以上方法表示:第一个参数为物体名,第二个参数为该物体组件上的函数名,第三个为函数的传入参数。

  • 最后成品如下:
成品 成品

图二中的对应数据字段传入到图一中了~


使用中出现的还未解决的问题

  • 我们在使用的过程中是从一个Activity跳转到UnityPlayerActivity的

  • 在这过程中,我们发现从UnityPlayerActivity返回到前一个Activity时,出现了这个Activity在活动栈中被清除了的情况

  • 分析得到得到在启用UnityPlayerActivity时,会将上一个Activity从活动栈中清除

  • 为了解决这个问题,我们在这中间加了一个Activity,然而无法从本质上解决问题

更多相关文章

  1. 箭头函数的基础使用
  2. NPM 和webpack 的基础使用
  3. Python技巧匿名函数、回调函数和高阶函数
  4. 【阿里云镜像】使用阿里巴巴DNS镜像源——DNS配置教程
  5. 读取android手机流量信息
  6. 浅析android通过jni控制service服务程序的简易流程
  7. android 使用html5作布局文件: webview跟javascript交互
  8. Android(安卓)多媒体扫描过程(Android(安卓)Media Scanner Proces
  9. android“设置”里的版本号

随机推荐

  1. android 定时发送短信
  2. Android(安卓)View深入学习(三),View的绘制(D
  3. Android:监听WIFI网络状态
  4. Android 单位
  5. activity_main.xml
  6. ubuntu Android Studio
  7. android sqlite 日期查询
  8. Android 7.0 Provider使用
  9. Android 获取CPU架构(指令集)
  10. Android沉浸式通知栏