当前位置: 移动技术网 > 移动技术>移动开发>Android > Unity与Android Studio交互的实现

Unity与Android Studio交互的实现

2020年07月14日  | 移动技术网移动技术  | 我要评论

Unity与Android Studio交互的实现

在使用Unity开发功能的时候,有时会需要调用android原生的功能,这时就要用Android Studio打包出插件放到Unity工程中。

一、开发工具

1.Unity 2018.4.23f1
2.Android Studio 3.5.2
(不同的版本和操作系统的操作方式几乎相同,只是界面选项有些许不同。)

二、开发流程

Android Studio创建library -> Android Studio导出arr文件 -> arr文件移至Unity并解压设置位置 -> c#中实现功能 -> Unity打出Android包并测试

三、开发步骤

1. 创建工程

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

2.创建Module

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

3.导入Unity中classes.jar文件

切换到Project面板
切换到Project面板
找到当前Unity版本的classes.jar,Windows的路径当前Unity版本\Editor\Data\PlaybackEngines\AndroidPlayer\Variations\mono\Development\Classes
在这里插入图片描述
把classes.jar文件拷贝到libs文件夹下,并设置成library,用于导入。
在这里插入图片描述
在这里插入图片描述

4.编辑代码

在自己创建的工程名称下创建空的Activity。
在这里插入图片描述
在这里插入图片描述
编写代码,注意红框中的内容,这里只写了一个简单的返回文字的方法。
在这里插入图片描述

5.设置AndroidManifest

只需要设置自己创建的文件夹下的AndroidManifest。
在这里插入图片描述

6.打包Android Studio

构建自己创建的模块。
在这里插入图片描述
构建完成后,切换至Project面板,找到arr文件并复制。
在这里插入图片描述

7.导入Unity

创建Unity工程,在Assets文件夹下创建Plugins文件夹,再创建子文件夹Android,arr文件粘贴到该文件夹下。
在这里插入图片描述
更改arr文件的后缀名为zip,并解压缩。
在这里插入图片描述
删除libs文件夹下的classes.jar文件,防止与另一个classes.jar发生冲突。
在这里插入图片描述
删除不必要的文件,只保留这两个文件即可。
(注意这两个文件一定要放在Android文件夹下面,不可以再包一层父文件夹)
在这里插入图片描述

8.编写c#

using System.Collections;
using System.Collections.Generic;
using UnityEngine;
using UnityEngine.UI;

public class Test : MonoBehaviour
{

    public Text txt;
    private AndroidJavaObject jo;

    private void Awake()
    {
        AndroidJavaClass jc = new AndroidJavaClass("com.unity3d.player.UnityPlayer");
        jo = jc.GetStatic<AndroidJavaObject>("currentActivity");
    }

    void Start()
    {
        txt.text = jo.Call<string>("returnMessage");
    }
}

一定要注意AndroidJavaClass和AndroidJavaObject,编写完成后打包测试,text的内容为“Android Studio Message”;

本文地址:https://blog.csdn.net/weixin_44143264/article/details/107297669

如对本文有疑问, 点击进行留言回复!!

相关文章:

验证码:
移动技术网