android studio集成unity導(dǎo)出工程的實(shí)現(xiàn)
最近需要將 unity 導(dǎo)出工程 嵌入到 android 工程
環(huán)境
1,android studio 2021.1.1.1
2, unity 2021.2.4
新建android 工程
1,
2,
導(dǎo)出 unity 工程
1,
2,導(dǎo)出結(jié)果 unityLibrary 就是我們想要的結(jié)果 launcher 暫時(shí)用不上
3, 在android 工程中
4,選擇unitylibarary 目錄
5,
6,更改 app gradle配置文件:
implementation project(path:':unityLibrary') implementation fileTree(dir: project(':unityLibrary').getProjectDir().toString()+('\\libs'), include: ['*.jar', '*.aar']) ndk { abiFilters 'armeabi-v7a', 'arm64-v8a' }
7,刪除manifest配置
8, 在 gradle.property 添加配置 不加這個(gè)會(huì)報(bào)錯(cuò)
unityStreamingAssets=.unity3d, google-services-desktop.json, google-services.json, GoogleService-Info.plist
9,添加 value值 不加也會(huì)掛掉
<string name="game_view_content_description">Game view</string>
10,調(diào)用
Button myBtn= findViewById(R.id.button); myBtn.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View v) { Intent intent = new Intent(MainActivity.this,UnityPlayerActivity.class); startActivity(intent); } });
android c# 互相調(diào)用
android 調(diào)用 c#
package com.xingame.unitycallandroid; import android.os.Bundle; import android.widget.Toast; import com.unity3d.player.UnityPlayer; public class MainActivity extends UnityPlayerActivity { @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); //setContentView(R.layout.activity_main); } //unity調(diào)用Android public void UnityCallAndroid () { Toast.makeText(this,"unity調(diào)用android成功", Toast.LENGTH_LONG).show(); AndroidCallUnity(); } //android調(diào)用unity public void AndroidCallUnity () { //第1個(gè)參數(shù)為Unity場(chǎng)景中用于接收android消息的對(duì)象名稱 //第2個(gè)參數(shù)為對(duì)象上的腳本的一個(gè)成員方法名稱(腳本名稱不限制) //第3個(gè)參數(shù)為unity方法的參數(shù) UnityPlayer.UnitySendMessage("receiveObj", "UnityMethod", "This is args."); } }
c# 調(diào)用 java
private void OnBtnClickHandler() { using (jc = new AndroidJavaClass("com.unity3d.player.UnityPlayer")){ using (jo = jc.GetStatic<AndroidJavaObject>("currentActivity")){ jo.Call("UnityCallAndroid"); } } }
到此這篇關(guān)于android studio集成unity導(dǎo)出工程的實(shí)現(xiàn)的文章就介紹到這了,更多相關(guān)android studio unity導(dǎo)出工程內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
基于Android中的 AutoCompleteTextView實(shí)現(xiàn)自動(dòng)填充
本篇文章小編為大家介紹,基于Android中的 AutoCompleteTextView實(shí)現(xiàn)自動(dòng)填充。需要的朋友參考下2013-04-04Android布局控件DrawerLayout實(shí)現(xiàn)完美側(cè)滑效果
這篇文章主要為大家詳細(xì)介紹了Android布局控件DrawerLayout實(shí)現(xiàn)完美側(cè)滑效果,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2018-08-08android使用PullToRefresh實(shí)現(xiàn)下拉刷新和上拉加載
本篇文章主要介紹了android使用PullToRefresh實(shí)現(xiàn)下拉刷新和上拉加載,具有一定的參考價(jià)值,有興趣的可以了解一下。2016-12-12Android 異步任務(wù)和消息機(jī)制面試題分析
這篇文章主要為大家介紹了Android 異步任務(wù)和消息機(jī)制面試題分析,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪2023-07-07APK包名修改 請(qǐng)問(wèn)如何修改APK包名
今天,想在android手機(jī)上安裝兩個(gè)相同的應(yīng)用,本以為可以安裝不同版本的,試了幾次,均相互覆蓋了,于是,只能設(shè)法修改apk所對(duì)應(yīng)的包名(package name),需要了解的朋友可以參考下2012-12-12Android使用http實(shí)現(xiàn)注冊(cè)登錄功能
這篇文章主要為大家詳細(xì)介紹了Android使用http實(shí)現(xiàn)注冊(cè)登錄功能,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2022-04-04cocos2d-2.0-x-2.0.3 交叉編譯到android報(bào)錯(cuò)解決
我用的是cocos2d-2.0-x-2.0.3 之前弄了一天也沒(méi)成功 今天來(lái)了下載了最新的ndk8 更新了sdk 又重新是了一遍 居然成功了,不知道是工具的版本問(wèn)題還是哪一步出錯(cuò)誤了,在這里詳細(xì)的整理一下,感興趣的朋友可以了解下2013-01-01Android利用RenderScript實(shí)現(xiàn)毛玻璃模糊效果示例
毛玻璃效果(亦稱磨砂效果),近兩年在移動(dòng)端的UI設(shè)計(jì)上越來(lái)越流行,下面這篇文章主要介紹了Android利用RenderScript實(shí)現(xiàn)毛玻璃模糊效果的相關(guān)資料,文中給出了詳細(xì)的示例代碼,需要的朋友可以參考學(xué)習(xí),下面來(lái)一起看看吧。2017-03-03