工具:
eclipse 带有adt的eclipse安装包不然无法创建Android Application Project
classes.jar 路径: 安装目录\Editor\Data\PlaybackEngines\AndroidPlayer\Variations\mono\Release\Classes
1、打开Eclipse建一个安卓库工程,注意是库工程
2.输入名称
创建完成
工程创建好,需要为工程导入一个Unity提供的classes.jar,该文件在Unity的安装目录下
导入成功
开始编码:
修改MainActivity.java类的父类为UnityPlayerActivity
该类需要import相关的包
import com.unity3d.player.UnityPlayerActivity;
代码:
package com.unityplugin.unityjar;
import android.support.v7.app.ActionBarActivity;
import android.os.Bundle;
import android.view.Menu;
import android.view.MenuItem;
public class MainActivity extends UnityPlayerActivity{
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
}
@Override
public boolean onCreateOptionsMenu(Menu menu) {
// Inflate the menu; this adds items to the action bar if it is present.
getMenuInflater().inflate(R.menu.main, menu);
return true;
}
/*
* 求和
*/
public int Sum(int a,int b)
{
int sum = a+b;
onCoderReturn(String.format("%s + %s = %s", a,b,sum));
return sum;
}
}
编好之后保存
导出
jar导出后,就可以创建一个Unity工程,进行测试了。
创建一个Plugins/Android的文件夹,该文件夹用来 存放安卓插件的。
将导出的jar包,Android工程里的AndroidMainFest.xml考到unity
接下来编写测试代码:
Test.cs
void Start(){
AndroidJavaClass jc = new AndroidJavaClass("com.unity3d.player.UnityPlayer");
AndroidJavaObject jo = jc.GetStatic<AndroidJavaObject>("currentActivity");
int sum = jo.Call<int>("Sum", new object[] { 10, 20 });
log.text = sum +"";
}
AndroidMainFest.xml
也可以找到unity工程里的AndroidMainFest.xml进行修改
记得将工程平台切换成Android
最后设置PlayerSettings,
可以build成apk了。