1. 程式人生 > >unity與安卓之間的呼叫簡單使用方法

unity與安卓之間的呼叫簡單使用方法

1.首先下載Android Studio,配置unity安卓環境,SDK,jdk配置。網上很多教程。
2.建立AS專案,新新增一個模組Module,在新建立Module下的JAVA資料夾下的空資料夾新增Activity,建立一個空
的Empty Activity;
3.在建立Empty Activity 的同時會連帶著生成一個佈局檔案。在res資料夾下的layout下,找到佈局檔案,刪除,在在將
MainActivity中的啟用佈局的一句程式碼刪除。setContentView(R.layout.activity_main)。
4.將unity中的class.jar包複製一份貼上到Module下的lib資料夾下,然後右鍵點選匯入模組中,當classes.jar
下有檔案時證明到入成功。
5.在Android檢視下,然後點選Module下的AndroidManifest.xml檔案找到,到app中找到相同的檔案將中的檔案替換,將報錯的地方刪除,在《intent-filter》和《activity》中間加入 meta-data android:name=”unityplayer.UnityActivity” android:value=”true”這句話。
6.第一種 :呼叫JAR包
然後找到MainActivity.java將繼承更換為UnityPlayerActivity,編寫程式。最後都要Build Module,最後在Project檢視下,找到build-》intermediates-》bundles-》debug資料夾右鍵開啟所在資料夾,將libs裡面unity自帶的class.jar包刪除,將生成的Jarbao 放進libs中。將AndroidManifest裡面修改包名,全部為小寫字幕。
第二種:呼叫AAR包
然後找到MainActivity.java將繼承更換為UnityPlayerActivity,編寫程式,最後都要Build Module。在找資料夾時不同,找到build——》output資料夾下有一個AAR包,複製出來修改,將裡面的class。jar包替換,將AndroidManifest。xml檔案修改包名,不然導進unity中會出現包名重複報錯,最後將arr包中的AndroidManifrst。XML修改。將lable和圖片刪除,其他不變,修改完畢,匯入unity中。
7.在unity中新建資料夾Plugins/Android先將包名改為與安卓裡面相同的包名
第一種 :呼叫JAR包
將修改過得libs資料夾和res資料夾和AndroidManifest.xml資料夾放到Android資料夾下
第二種:呼叫AAR包
將修改過AAR包和AndroidManifest.xml資料夾放到Android資料夾下
8.在unity裡面編寫方法呼叫
//獲得位於com.unity3d.player這個包下面的unityplayer類
AndroidJavaClass jc = new AndroidJavaClass(“com.unity3d.player.UnityPlayer”);
//獲得jc所代表的類下的currentActivity物件
AndroidJavaObject jo = jc.GetStatic(“currentActivity”);
用jo.call或jo.callstatic去獲取安卓裡面的函式
在安卓裡面用UnityPlayer.UnitySendMessage(“場景中掛指令碼的物體名”,“指令碼中的呼叫的方法名”,“引數”)。
9.Toast建立函式安卓裡面表寫的方法,直接在unity呼叫方法即可
public void ShowToast(final String msg)
{
runOnUiThread(new Runnable() {
@Override
public void run() {
Toast.makeText(MainActivity.this,msg,Toast.LENGTH_LONG).show();
}
});
}