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 暫時用不上

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 添加配置 不加這個會報(bào)錯
unityStreamingAssets=.unity3d, google-services-desktop.json, google-services.json, GoogleService-Info.plist

9,添加 value值 不加也會掛掉

<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個參數(shù)為Unity場景中用于接收android消息的對象名稱
//第2個參數(shù)為對象上的腳本的一個成員方法名稱(腳本名稱不限制)
//第3個參數(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)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
Flutter綜合部分頁面詳情頁實(shí)現(xiàn)過程示例
這篇文章主要為大家介紹了Flutter綜合部分頁面詳情頁實(shí)現(xiàn)過程步驟示例詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪2023-08-08
詳解Android ViewPager2中的緩存和復(fù)用機(jī)制
最近接觸到豎向整頁滑動的需求,發(fā)現(xiàn)了viewpager2,viewpager2支持fragment,保留了viewpager的特性,下面這篇文章主要給大家介紹了關(guān)于ViewPager2中的緩存和復(fù)用機(jī)制的相關(guān)資料,需要的朋友可以參考下2021-11-11
Android 圖片存入系統(tǒng)相冊更新顯示實(shí)例詳解
這篇文章主要介紹了Android 圖片存入系統(tǒng)相冊更新顯示實(shí)例詳解的相關(guān)資料,需要的朋友可以參考下2017-06-06
詳解Android如何實(shí)現(xiàn)自定義的動畫曲線
最近在寫動畫相關(guān)的篇章,經(jīng)常會用到 Curve 這個動畫曲線類,那這個類到底怎么實(shí)現(xiàn)的?如果想自己來一個自定義的動畫曲線該怎么弄?本文將為大家詳細(xì)解答2022-04-04
Android編程之微信SDK分享功能過程步驟詳細(xì)分析
這篇文章主要介紹了Android編程之微信SDK分享功能過程步驟詳細(xì)分析,較為詳細(xì)的分析了Android微信SDK分享功能的原理、步驟與相關(guān)注意事項(xiàng),需要的朋友可以參考下2015-10-10
Android創(chuàng)建Menu菜單實(shí)例
這篇文章主要介紹了Android創(chuàng)建Menu菜單實(shí)例,講述了Android菜單項(xiàng)的創(chuàng)建方法,在Android應(yīng)用程序開發(fā)中非常具有實(shí)用價值,需要的朋友可以參考下2014-10-10
解決Android Studio 代碼自動提示突然失效的問題
這篇文章主要介紹了解決Android Studio 代碼自動提示突然失效的問題,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧2020-03-03
Android使用系統(tǒng)相機(jī)進(jìn)行拍照的步驟
這篇文章主要介紹了Android使用系統(tǒng)相機(jī)進(jìn)行拍照的步驟,幫助大家更好的進(jìn)行Android開發(fā),感興趣的朋友可以了解下2020-12-12

