两者结合的的具体教程:Unity与AndroidStuido方法简单交互
个人认为这个教程比较好
下面是一些这里面存在的一些坑:
1.关于unity的calsses.jar和UnityPlayerActivity.java原文链接:Unity和Android Studio交互_淑淑今天学习了吗的博客-CSDN博客
2.导出的jar文件里面需将UnityplayerActivity.class和BuildConfig.class删除。否则unity导出时会报错。
3.Unity player settings内的package name与AndroidManifest.xml保持一致,至于company name与product name可不与其一致(不影响)
4.unity c#脚本中调用jar包内函数方式:
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
using UnityEngine.UI;
public class Test : MonoBehaviour
{
public Text test1;//测试文本框
public Button btn1;
public AndroidJavaClass jc;
public AndroidJavaObject jo;
private void Awake()
{
//固定写法
jc = new AndroidJavaClass("com.unity3d.player.UnityPlayer");
jo = jc.GetStatic<AndroidJavaObject>("currentActivity");
//按钮事件
btn1.onClick.AddListener(TEST);
}
public void TEST()
{
//以string类型为例
string str1 = jo.Call<string>("test");//jar包内存在函数test,返回字符串"test"
test1.text = str1;//文本框内容更新为接收到的字符串
}
}
5.如果jar包内导入的有依赖的库,可能存在打包后依赖库的缺失的情况,那么就需要在unity对mainTemplate.gradle进行配置。
提示:如导出apk后安装后运行中出现意外情况,可采用adb命令logcat找错误,推荐在Android studio中的terminal下运行,Ctrl+F可查找包名快速定位。
Adb配置参考:ADB配置调试