1. 目标1) Unity3D可调用Android Java函数(在.jar中) 2) Java可调用Unity3D函数 3) Unity3D可调用Android C函数(在.so中) 2. 测试环境1) Unity5.0 2) JDK: jdk-8u25-windows-i586 3) Android SDK
4) Eclipse : adt-bundle-windows-x86中自带的 3. 创建Java工程第一步:
第二步:
第三步:
第四步: Configure Laucher Icon,不做任何修改,不要把你的Image File在这儿加入,它会强行修改Image File的尺寸,在后面把它直接放入res/drawable即可。 第五步:
第六步:Blank Activity采用默认值即可。 第七步:删除下面红色标记部分
注:若其基类不是Activity,则在左边PlugInTest上点右键,然后选择Properties,进入如下界面:
4. 修改Android工程4.1 导入Unity5.0 classes.jar 1) 其中定义了UnityPlayerActivity<它的基类是Activity>,其源码位置:
C:\Program Files\Unity\Editor\Data\PlaybackEngines\androidplayer\com\unity3d\player) 2) classes.jar位于:C:\Program Files\Unity\Editor\Data\PlaybackEngines\androidplayer\release\bin,其导入方法如下图所示:
4.2 替换Launcher Icon把自己制作的ic_launcher.png覆盖res/drawable-xxx目录中的ic_launcher.png 4.3 修改MainActivity.java
4.4 把Android内容导出到Unity5.0
4.4.1 生成plugintest.jar
1) 进入PlugInTest的Properties中,并勾选“Is Library” 2) Project->Clean 3) Project->Build Project 4) 生成的plugintest.jar见bin目录 4.4.2 把PlugInTest中内容放入Unity5.0把以下内容都于Unity Project的“Assets\Plugins\Android”目录中。 1)bin目录下的plugintest.jar 2)bin目录下的AndroidManifest.xml (可根据需要增加其它的Activity或权限) 3) 整个res目录 其结果在Unity Project如下图:
5. 修改Unity工程5.1 修改Android 【Player Settings】
5.2 访问Java接口
UnityEngine.AndroidJavaClass与java.lang.Class及其子类对应。 UnityEngine.AndroidJavaObject与java.lang.Object及其子类对应。
5.3 导出apkFile->Build Run 当导出apk时,可能遇到下面的问题:
Unable to find unity activity in manifest. You need to make sure orientation attribute is set to fullSensor manually. 需在AndroidManifest中增加一行:
全部AndroidManifest如下所示:
6. Android Native Plug对于Android平台(armv7,x86)的Native Plugin, lib*.so应放于以下目录中: 1) X86平台: Assets/Plugins/Android/libs/x86/
参考:http://docs./Manual/PluginsForAndroid.html
|
|
来自: kiki的号 > 《unity与android的交互》