Unity与Android的融合之旅

前面的话

        我原本是做unity开发的,对于Andrid的了解也就最粗浅的阶段,由于项目需求,需要进行unity和Android的原生项目融合,被逼上梁山.通过各种百度,终于将unity项目的Android项目进行了融合,此次融合使用的unity版本是2018.1,Android方面使用的是Android Studio3.0(朋友推荐反正刚接触安卓,直接看这个)

Unity部分

        Unity导出到Android平台的时候,在设置好了相应的Android环境以后,可以直接导出apk的安装程序,也可以导出Android的工程文件,由于我们需要和原生的Andorid程序进行融合所以我们需要导出的就不是apk的安装包,而是一个Andorid工程.为了能导出可供融合的Android工程需要在Unity中进行一些设置.
主要是将BuildSettings中的 Build System 更改为Gradle,勾选Export Project就可以导出供Android Studio使用的工程了.其他的和导出APK的设置一样


    看网上说,需要把包名设置成和Android工程的包名一样的,但经过我自己的测试,其实不一样也没有什么关系,根据我的猜测可能是我将这个工程作为了第三方库(AS中叫Module)导入到Android工程中,自身的工程设置不会改变.
所以就算和Andorid原来工程的包名不一样也没有太大关系.
        点击Export后找个地方用来存放工程文件,经过一段时间的等待,如果unity工程没错,应该就可以成功导出一个工程了,导出的工程都长这样.

        到这里unity里面的操作就完成了,可以说很简单,和平常的没什么差别.接下来就轮到了Andorid里面的操作了.

Andorid部分

        打开Andorid Studio 的原生工程,然后以Module的方式将Uniyt的导出的工程导入到Android的原生工程中


点击这个ImpotrModule以后就有一个界面供里选择你要导入的工程的位置,选中以后,会出现一个moduleName的选项,这个是可以编辑的,是显示在Andorid Studio里面这个导入的工程的名字

        导入以后切换到Project中(我是小白,表示感觉这样找到文件位置改起来放心点,主要是build.gradle太多,作为小白的我有点懵,虽然后来发现,其实在Andorid的模式下,这些后面都会跟一个路径)
融合的重点来了
        首先我们找到导入的这个工程里面一个叫build.gradle的打开

看到的基本就是这样了的需要修改的只要是以下一个地方
1.将 apply plugin: 'com.android.application' 更改为 apply plugin: 'com.android.library'
2.将 compileSdkVersion minSdkVersion targetSdkVersion 设置成和原生工程中的一样
删除掉applicationId这一行
这么做是将这个工程修改成android studio的一个库,来让其他工程调用他
        然后我们找到导入的这个工程里面一个src文件夹下的AndroidManifest.xml文件,这个是Andorid的配置文件,这里需要对导入的这个工程进行配置更改,因为unity导出的这个工程默认是作为一个可以发布的安卓工程,而不是一个库

如果你的看起来不是这么规整,那么你可以全选这些代码,然后按ctrl+alt+L将这些代码格式化,看起来就好看多了
这里需要修改的是一下几个地方
1.删除下面的这个代码,如果不删除安装后在手机上会有2个文件
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
2.删除这个<application >标签里面的下面三项
android:icon="@drawable/app_icon"
android:label="@string/app_name"
android:theme="@style/UnityThemeSelector"
到这里对于导入工程的设置就完成了
        然后我们需要在原生工程中设置对这个修改好的工程的依赖

QQ图片20180713163018.png

这样就添加对于unity导出的工程的依赖
融合的配置方面就完成的,剩下的就是对于根据需求再次开发了

警告

PS警告不应该写在最前面吗?
写最前面我上的当不是白上了.

1.一切正常,测试时提示说你的硬件设备不支持该App,恭喜你中奖了,原因有很多,其中有一种可能是你在untiy中的设置导致的


Target Architetures 需要选中ARMv7和x86

对于这个错误我实在是无力吐槽,我找了好久都没找到27.1.1的平台,百度答案也是五花八门,最后无意中发现其实根本不需要管,或者是前强迫症患者,也可以rebuild Porject 就消失了

最后的话

        由于本人是Android的小白一枚,在此过程中碰壁无数,写在这里也只是为了给自己留个痕迹,以防在以后遇见这种需求的时候可以参考,毕竟主业不是做Android的.如果有大佬能指正小弟,在此感激不尽.
        最后感谢各位看到这里!!

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 204,530评论 6 478
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 86,403评论 2 381
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 151,120评论 0 337
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 54,770评论 1 277
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 63,758评论 5 367
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 48,649评论 1 281
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 38,021评论 3 398
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 36,675评论 0 258
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 40,931评论 1 299
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 35,659评论 2 321
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 37,751评论 1 330
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 33,410评论 4 321
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 39,004评论 3 307
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 29,969评论 0 19
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 31,203评论 1 260
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 45,042评论 2 350
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 42,493评论 2 343

推荐阅读更多精彩内容