當前位置:成語大全網 - 書法字典 - 如何解決unity和android studio的通訊問題?

如何解決unity和android studio的通訊問題?

1.首先,從Unity創建壹個Android項目。比如我的項目名稱是:01_Unity_Message,下面是項目視圖下的目錄。

2.創建壹個新的庫模塊——Android項目由模塊組成,每個模塊可以創建壹個應用。切換到Android視圖可以看到每個模塊。因為Unity和Android的通信主要是調用各自的方法,所以我們可以在Android項目中新建壹個模塊作為庫模塊來負責和Unity的交互內容。

新模塊操作:

單擊Finish,然後稍等片刻,壹個新的模塊將被創建,我們將使用它作為庫模塊,如下所示:

3.將Unity的jar包(class.jar)導入到新建的庫模塊中。首先解釋壹下:

首先找到class.jar文件,其路徑在Unity的安裝路徑下。比如我的在:d:\ Program files(x86)\ unity 5 . 3 . 6 \ Editor \ Data \ playback engines \ Android Player \ Variations \ Mono \ Release \ Classes,然後妳會發現只有壹個class.jar文件。

這裏註意兩點:

(1),該路徑在新版Unity下,之前版本的jar文件在\ Unity 5 . 3 . 6 \ Editor \ Data \ Playback Engines \ Android Player \ Release \下;

(2)Unity路徑下的class.jar文件有兩個不同的路徑,壹個在Unity 5 . 3 . 6 \ Editor \ Data \ Playback Engines \ Android Player \ Variations \ Mono \ Release \ Classes下,壹個在Unity 5 . 3 . 6 \ Editor \ Data \ Playback Engines \ Android Player \ Variations \ il 2 CPP \ Release \ Classes下的D:\Program Files (x86)\下。我們在Unity中使用C#腳本,最後在Android上運行是因為Mono對它進行了轉換,所以我們選擇的jar文件是第壹個路徑。如果使用的是il2cpp,應該選擇第二個路徑中的jar文件。

將jar包導入庫模塊的操作如下:

4.因為新建的庫模塊中沒有MainActivity.java,所以我們可以把它理解為啟動這個模塊的java類。例如,在初始應用程序模塊中有壹個MainActivity.java。因此,有必要創建壹個新的MainActivity.java文件並調用Unity包中的基類,如下所示:

單擊Finish後,將在library模塊中創建壹個MainActivity類。

註意:生成MainActivity類後,res/layout下會生成壹個xml文件:main_layout.xml這個文件是布局文件,

因為我們的庫模塊是為了和Unity交互而設計的,不需要界面布局,所以為了防止以後出錯,我們在這裏刪除這個文件。

註意:要修改AndroidMainfest.xml文件,

然後,模仿初始應用程序模塊中的AndroidMainfest.xml文件

然後您需要修改MainActivity腳本。

5.下面是用Android寫Unity時要調用的方法。比如我這裏只寫壹個簡單的兩個數求和的方法:

6.構建庫模塊,然後將生成的配置文件導入Unity項目,如下所示:

然後等壹下,編譯。....

然後在項目視圖中,找到編譯好的文件所在的目錄unity _ exchange/build/intermediates/bundles/debug,右鍵打開文件夾。

然後將debug文件夾中的class.jar文件移動到libs文件夾中,並替換libs文件夾中的class.jar文件。然後將debug文件夾下的libs文件夾、res文件夾和AndroidManifest.xml文件導入到Unity的Assets/Plugins/Android文件夾中(沒有這個文件夾先創建)。

然後把這三個文件移到Unity的plugins/Android文件夾。

7.創建Unity的C#腳本,並將其安裝在MainCanera上。為了看到真機測試中求和的結果,我用UGUI的文本在這裏顯示結果,通過按鈕觸發求和方法。如下圖。

下面是主要的腳本代碼。在Android中調用方法,並在(文本)界面上顯示求和結果。

在主攝像機上安裝腳本

8.Unity editor無法運行Android相關操作,需要導出apk文件到真機進行測試。

註意:您應該在導出之前修改播放器設置的相關配置。因為壹個AndroidManifest文件是從Android項目中導入的,所以這個文件包含了Android項目的相關配置,比如項目名稱、項目的包名、最低SDK版本、要執行的活動等等。所以我們需要在Unity導出apk之前修改壹些相關的配置,主要是包名。

最後導出apk包,在手機或虛擬機上測試。

特別提醒:如果使用Android項目中的初始app模塊與Unity交互,需要修改壹些配置。在build.gradle文件中,刪除applicationId,然後將apply插件後的內容改為“com.android.library”。

不建議您使用初始的app模塊,而是專門為交互創建壹個新的庫模塊。