例子中使用的开发环境为Android Studio 2.2, Unity3d5.4.3。


Android Studio环境

一.新建Android工程
1.打开Android Studio,【File】->【New】->【New Project】。在Application name中输入zouxin,Company Domain中输入enjoy.com。包名 Package Name 自动生成com.enjoy.zouxin(最好全都小写,尽管有提示首字母大写),必须与unity中打包参数 Bundle Identifier 中的包名一致。点击【Next】

2.选择Phone and Tablet,设置Minimum SDK:API16:Android4.1(Jelly Bean)。点击【Next】

3.选择 Empty Activity。点击【Next】

4.Activity Name及Layout Name保持默认。点击【Finish】


二.导入Unity的classes.jar到Android工程
1.在Windows下,打开目录C:\Program Files\Unity\Editor\Data\PlaybackEngines\AndroidPlayer\Variations\mono\Release\Classes,按Ctrl+C复制classes.jar。

2.切换到Android Studio,选择zouxin工程的Project视图,选中zouxin/app/libs文件夹,按Ctrl+V弹出复制对话框,点击【OK】即完成了将unity3d的classes.jar复制到了Anroid工程中。

3.在Porject视图中选择app点击右键选择【Open Module Settings】,切换到Dependencies选项卡,点击右边的【+】选择【2 File Dependecy】,选择libs/classes.jar。点击【OK】。

三.编写 MainActivity 代码

package com.enjoy.zouxin;import android.app.AlertDialog;import android.support.v7.app.AppCompatActivity;import android.os.Bundle;import com.unity3d.player.UnityPlayerActivity;public class MainActivity extends UnityPlayerActivity{    @Override    protected void onCreate(Bundle savedInstanceState) {        super.onCreate(savedInstanceState);    }    //弹出对话框    public String ShowDialog(final String _title, final String _content) {        runOnUiThread(new Runnable() {            @Override            public void run() {                AlertDialog.Builder builder = new AlertDialog.Builder(MainActivity.this);                builder.setTitle(_title).setMessage(_content).setPositiveButton("Down", null);                builder.show();            }        });        return "This is Return value";    }}


三.修改 AndroidManifest.xml
切换到Anroid视图,打开app/manifests/AndroidManifest.xml。在节点与节点之间加上


四.修改app下的build.gradle
切换到project视图,打开zouxin/app/build.gradle
1.将首行的apply plugin: 'com.android.application' 修改为 apply plugin: 'com.android.library' 
2.删除applicationId "com.enjoy.zouxin",位于以下位置。
android {
...
    defaultConfig {
        applicationId "com.enjoy.zouxin"
...
    }    
}

五.编译生成aar包,

1.点击菜单【Build】->【Build APK】,如果能生成成功会在zouxin\app\build\outputs\aar下生成app-debug.aar。


Unity3d环境
1.新建Unity工程取名MainPro。手动创建文件夹Assets\Plugins\Android。

2.复制Android Studio中的app-debug.aar(zouxin\app\build\outputs\aar)及AndroidManifest.xml(位于zouxin\app\src\main)到Unity3d中的Assets\Plugins\Android目录下。


3.用WinARA软件打开Unity3d中的Assets\Plugins\Android目录的aar包,删除res文件夹;删除libs下的classes.jar。
4.打开C:\Program Files\Unity\Editor\Data\PlaybackEngines\AndroidPlayer\Apk下的AndroidManifest.xml,用文件中节点下的以下属性(共4个),替换掉Assets\Plugins\Android下AndroidManifest.xml中的属性(共5个)。
android:theme="@style/UnityThemeSelector"
android:icon="@drawable/app_icon"
android:label="@string/app_name"
android:debuggable="true">

5.在Unity3d创建一个按钮名为TestBtn【GameObject->UI->Button】,调整按钮位置及大小,保存场景名为main.unity。
6.创健一个C#脚本TestBtnScript,在脚本中添加函数。
public void MyShowDialog(){// Android的Java接口  AndroidJavaClass jc = new AndroidJavaClass("com.unity3d.player.UnityPlayer");AndroidJavaObject jo = jc.GetStatic("currentActivity");// 参数  string[] mObject = new string[2];mObject[0] = "Dialog title";mObject[1] = "Dialog text is here!!";// 调用方法  string ret = jo.Call("ShowDialog", mObject);}

7.将TestBtnScript脚本与TestBtn绑定,将MyShowDialog函数设为TestBtn的点击响应函数。
8.点击菜单【File】->【Build Settings】,选中Android平台。修改Player Setting中的安卓属性Minimum API Level,使其与Andorid Studio工程中一致(API level 16)。修改Company Name为enjoy,修改Project Name为zouxin,修改Bundle Identifier为com.enjoy.zouxin(与Android Studio中的包名一致)。
(09)
9.将当前场景加入Scenes In Build列表中,完成Build。上传到手机上试运行。

OK大功告成。

更多相关文章

  1. 手把手带你搭建 Elasticsearch 集群
  2. Android(安卓)ViewModel 的作用
  3. Android(安卓)问题之找不到资源解决办法
  4. Android(安卓)应用层读取底层节点信息
  5. [置顶] Android更换皮肤
  6. 导入Android工程源码出现乱码问题的解决方法
  7. Eclipse下Android开发,如何查看 API源代码、私有库源代码 文件 (a
  8. android之init进程-uevent
  9. Error retrieving parent for item: No resource found that mat

随机推荐

  1. 10 个Linux Awk文本处理经典案例
  2. Python 发送邮件各种姿势
  3. Kubernetes Dashboard v2.0.0 尝鲜
  4. Kubeadm 部署高可用 K8S 集群
  5. 解决docker服务默认网卡和宿主机网卡内网
  6. 一个简单的Java计时器项目,附源码
  7. RSA加密的填充方式
  8. 什么是技术分析(Technical Analysis)指标库
  9. PHP语言之华为应用内支付IAP验签
  10. 构建用户评分体系