導航:首頁 > 操作系統 > unity3d和android

unity3d和android

發布時間:2022-11-07 17:42:55

A. 如何進行Unity3D與android消息傳遞

1.Unity工程導出為Android Studio工程
(我個人用的U3D版本是5.1.1,已經支持直接將Unity工程導出為AS工程了,以前的版本我不敢保證.)

首先你要寫好Unity工程裡面的腳本,包括你希望Android調用的方法和調用Android方法的方法,這個在下面會有詳細敘述;接下來導出AS工程,方法是:
File裡面的Build Settings -> 平台選擇Android,在Player Setting裡面設置API版本和包名(包名很重要) -> 點擊Build Setting中的Google Android Project復選框 -> Export

2. AS打開導出的工程

首先隨便打開一個AS工程,然後FIle -> New -> Import Project -> 選剛才導出來的工程 -> 等待Gradle -> 以此工程為基礎繼續開發Android代碼

3. Android 調用 Unity 腳本中的方法

這里首先對Unity腳本進行一點說明,以C#為例:
在OnStart()裡面要寫入
this.name = "A"

某個你要調用的方法設置為public類型,名稱為B,參數為C
在一個Extend UnityPlayerActivity的Activity里,直接使用
UnityPlayer.UnitySendMessage("A","B","C");
就可以調用腳本中的方法了.

4.Unity腳本調用Android方法

首先你要知道的是,在Unity腳本里寫調用安卓方法的時候,這個方法還不需要存在,你也不需要把安卓的代碼壓成jar包放進Unity工程.但是,你要調用的方法必須是靜態方法.

剛說過的導出工程時候的包名很重要,假設是com.hu.solare;再假設在工程被導入到AS後,你在這個包中編寫了MainActivity.class,其中包含靜態方法onCall(String str).則你可以在Unity腳本中提前寫好:
AndroidJavaClass jc = new AndroidJavaCalss("com.hu.solare.MainActivity");
jc.callStatic("onCall","String")
即可調用onCall方法.

B. unity3d 怎樣發布android程序

1、下載安卓的SDK包。

2、打開Unity3d,點擊Edit里的Preferences,彈出如圖所示數據框,點擊第二項External Tools,將下邊Android SDK location的路徑指向下載的Android SDK。

3、在Unity3d中建好場景後點擊File->Building settings,選擇Android版本。

4、點擊player settings,找到Identification,將其中的 com.compan.ProctName的compan隨便做改動,比如去掉一個字母。

5、最後點擊Building,將會生成Android。

C. 如何進行Unity3D與Android消息傳遞

Unity與Android的相互調用及消息傳遞主要採取中間件的方式。

幫你歸類一下,大致如下:

  1. 創建Java項目

  2. 在Java項目中引入Unity提供的classes.jar包

  3. 編寫你自己的Java文件,同時引入com.unity3d.player.UnityPlayerActivity包

  4. 修改Manisest.xml文件

  5. 將項目導出Jar文件

  6. 在Unity中創建Plugins/Android目錄,將導出的Jar文件和Manisest.xml復制到Android目錄下

  7. 修改Unity中導出項目的包名

  8. 在項目中創建並實例化AndroidJavaClass對象,並實例化參數com.unity3d.player.UnityPlayer包

  9. 同時創建並實例化AndroidJavaObject對象,實例化參數為currentActivity

  10. 最後可以使用實例化的AndroidJavaObject.Call來調用Java中寫好的公有方法。

D. 如何配置unity3d的安卓手機開發環境

1.Android運行環境的搭建

進行安卓系統的軟體設計,那麼JDK的開發環境搭建必須是首要的。我們選擇Windows10 64位操作系統。同時在JDK版本的選擇中選用Windows x64版本的Java SE Development Kit 8u5,該版本穩定,應用廣泛而且開源免費,獲取方便。在安裝的過程中要注意不要重復安裝,應安裝完畢後立即刪除安裝包,否則如果不小心再次點到安裝包,該安裝包會立刻刪除所安裝的程序並詢問是否重新安裝。在JDK的安裝過程中,要注意開發工具,源代碼,公共JRE三項都要選中,而且要安裝到C盤默認目錄下,同時將其附帶的JRE同樣安裝到相同目錄下,同時硬碟至少應該留有2G的空間。

選擇好JDK的版本並進行安裝後,我們的JAVA環境就安裝好了,眾所周知,安卓系統是由JAVA語言架構的,所以在搭建安卓運行環境之前必須要先安裝JAVA環境。安裝完JAVA環境之後,我們進行安卓開發環境的搭建。我們就要進行Android SDK版本的選擇。我們這里選擇android-sdk_r24.4.1-windows版本。這個版本是與安卓8.0同時發布的,同時它的發布時間也在我們的安卓測試機紅米NOTE5A型號之後,可以完美兼容我們的安卓測試機所運行的安卓7.1.2版本。

以上就是安卓環境的安裝和搭建,更多Unity開發方面的問題可以看下這個視頻教程網頁鏈接,希望我的回答能幫到你。

E. unity3d屬於android嗎

unity3d是一個游戲引擎,不過他支持跨平台而已,支持android ios mac linux windows等等系統。

F. 求助各位大神幫我看下 Unity3d 與 Android 交互的問題

1將Unity3D安裝目錄下的Unity\Editor\Data\PlaybackEngines\androidplayer\release\bin\classes.jar
拷貝到Android工程的libs文件夾里:

2
右鍵單擊classes.jar選擇Build Path裡面的Add to Build Path:

3
在MainActivity中繼承UnityPlayerActivity。刪除多餘的方法,僅保留onCreate方法中的super.onCreate語句,如下:
public class MainActivity extends UnityPlayerActivity {
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
}
}
4

添加要在unity中調用的方法,這里添加一個帶一個參數的方法StartActivity來調用Android的Activity從而運行Android的代碼。還添加了一個有返回值的方法GetInt,用來測試在Unity中獲取android中方法的返回值。(貌似只能有一個UnityPlayerActivity,而且這個Activity不能是調用第三方SDK方法的Activity。UnityPlayerActivity只能作為Unity和Android交互的一個介面,在這裡面再去調用其他的Activity)
5

package com.example.unitydemo;

import android.content.Context;
import android.content.Intent;
import android.os.Bundle;

import com.unity3d.player.UnityPlayerActivity;

public class MainActivity extends UnityPlayerActivity {
private Context mContext = null;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
mContext = this;
}

public void StartActivity(String name) {
Intent intent = new Intent(mContext, WelcomeActivity.class);
intent.putExtra("name", name);
this.startActivity(intent);
}

public int GetInt()
{
return 1;
}
}

6
然後Clean一下當前工程,避免一些不必要的問題。

然後在Build Project

右鍵單擊工程,選擇Export

選擇JAR file

右邊全部勾選,輸入JAR的路徑和名字,然後單擊finish:

在Unity項目中創建一個Plugins,如下的目錄結構

其中bin文件夾放剛剛導出的JAR包,libs文件夾放需要用的第三方庫文件,res文件夾和AndroidManifest直接從Android工程中拷貝過來。
(除了res文件夾不能動,其他的最好都不要放在單獨的文件夾裡面,貌似除了jar能載入出來,其他格式的文件如果放在其他目錄下會載入不出來)
然後在Unity裡面創建一個腳本文件,綁定在MainCamera上(當然也可以綁定在其他的對象上),如下:

在腳本文件中寫如下代碼:

using UnityEngine;
using System.Collections;
public class Demo : MonoBehaviour {
void Start () {
}
void Update()
{
//當用戶按下手機的返回鍵或home鍵退出遊戲
if (Input.GetKeyDown(KeyCode.Escape) || Input.GetKeyDown(KeyCode.Home) )
{
Application.Quit();
}
}
void OnGUI()
{
if (GUI.Button(new Rect(Screen.width * 0.1f, Screen.height * 0.1f, Screen.width * 0.8f, Screen.height * 0.1f), "StartActivity"))
{
AndroidJavaClass jc = new AndroidJavaClass("com.unity3d.player.UnityPlayer");
AndroidJavaObject jo = jc.GetStatic<AndroidJavaObject>("currentActivity");
jo.Call("StartActivity", "第一個Activity");
}
if (GUI.Button(new Rect(Screen.width * 0.1f, Screen.height * 0.2f, Screen.width * 0.8f, Screen.height * 0.1f), "GetInt"))
{
AndroidJavaClass jc = new AndroidJavaClass("com.unity3d.player.UnityPlayer");
AndroidJavaObject jo = jc.GetStatic<AndroidJavaObject>("currentActivity");
Debug.Log(jo.Call<int>("GetInt"));
}
}
}

然後生成APK文件,記得先把包名改成與Android工程一樣的包名。

要測試,只能在手機上測。
最終效果圖:

17
單擊StartActivity,啟動Android的一個Activity,單擊GetInt,Console顯示1

G. unity3d與android交互的sdk怎麼接

1、打開Android Studio——>configure——Android SDK。

注意事項:

SDK可能附帶了使其不能在不兼容的許可證下開發軟體的許可證。例如產品供應商提供一個專有的SDK可能與自由軟體開發抵觸。

H. 如何進行Unity3D與Android消息傳遞

(我個人用的U3D版本是5.1.1,已經支持直接將Unity工程導出為AS工程了,以前的版本我不敢保證.)

首先你要寫好Unity工程裡面的腳本,包括你希望Android調用的方法和調用Android方法的方法,這個在下面會有詳細敘述;接下來導出AS工程,方法是:
File裡面的Build Settings -> 平台選擇Android,在Player Setting裡面設置API版本和包名(包名很重要) -> 點擊Build Setting中的Google Android Project復選框 -> Export

2. AS打開導出的工程

首先隨便打開一個AS工程,然後FIle -> New -> Import Project -> 選剛才導出來的工程 -> 等待Gradle -> 以此工程為基礎繼續開發Android代碼

I. 用UNITY3D開發android游戲要學習什麼

你可以先去【繪學霸】網站找「游戲特效/unity3D」板塊的【免費】視頻教程-【點擊進入】完整入門到精通視頻教程列表: www.huixueba.net/web/AppWebClient/AllCourseAndResourcePage?type=1&tagid=305,306&zdhhr-11y17r-560576480037136404

想要系統的學習可以考慮報一個網路直播課,推薦CGWANG的網路課。老師講得細,上完還可以回看,還有同類型錄播課可以免費學(贈送終身VIP)。

自製能力相對較弱的話,建議還是去好點的培訓機構,實力和規模在國內排名前幾的大機構,推薦行業龍頭:王氏教育。
王氏教育全國直營校區面授課程試聽【復制後面鏈接在瀏覽器也可打開】:
www.cgwang.com/course/gecoursemobilecheck/?zdhhr-11y17r-560576480037136404

在「游戲特效/unity3D」領域的培訓機構里,【王氏教育】是國內的老大,且沒有加盟分校,都是總部直營的連鎖校區。跟很多其它同類型大機構不一樣的是:王氏教育每個校區都是實體面授,老師是手把手教,而且有專門的班主任從早盯到晚,爆肝式的學習模式,提升會很快,特別適合基礎差的學生。

大家可以先把【繪學霸】APP下載到自己手機,方便碎片時間學習——繪學霸APP下載: www.huixueba.com.cn/Scripts/download.html

J. unity3d 好還是android

如果不烘焙東西的話,沒有太大影響。
建議還是下載高版本的,因為修復了很多之前的bug,也添加了很多新功能。
現在最新版是4.6,但是測試版,建議下載4.3之上的版本,有了2D模塊。4.5是正式版
如果只是學習一些基礎內容,可以下載3.5版本的,很經典的版本,但2D模塊和新動畫系統等沒有
Unity對配置沒有太高要求,所以可以多下載幾個版本試驗下。

閱讀全文

與unity3d和android相關的資料

熱點內容
金蝶啟動命令 瀏覽:480
安卓如何執行shell命令 瀏覽:947
linux路由控制 瀏覽:434
碧藍航線壓縮包解壓密碼 瀏覽:439
抗性提升命令方塊指令 瀏覽:769
程序員那麼可愛第30集免費看 瀏覽:637
如何下載老友麻將app 瀏覽:445
java路徑參數 瀏覽:592
php命名空間使用 瀏覽:298
app的競爭力如何寫 瀏覽:587
linux刪除swp 瀏覽:590
pdfxchange40 瀏覽:77
車牌號碼是哪個app 瀏覽:50
文件夾如何添加圓點 瀏覽:731
如何建立主索引命令 瀏覽:601
mac電腦怎麼打開終端命令 瀏覽:743
androidvpn待機不斷 瀏覽:758
硬碟的文件夾如何設置密碼 瀏覽:384
plc定位編程 瀏覽:49
mac命令添加用戶 瀏覽:817