前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >【Unity3D】Unity 中使用 C# 调用 Java ① ( Android Studio 模块准备 | 编译 Android 模块拿到字节码文件 | 拷贝字节码到 Unity 编辑器 )

【Unity3D】Unity 中使用 C# 调用 Java ① ( Android Studio 模块准备 | 编译 Android 模块拿到字节码文件 | 拷贝字节码到 Unity 编辑器 )

作者头像
韩曙亮
发布2023-03-30 17:56:55
5420
发布2023-03-30 17:56:55
举报
文章被收录于专栏:韩曙亮的移动开发专栏

文章目录

【Unity3D】Android 打包 ④ ( Android 工程打包 | Unity 中导出安卓工程 | Android Studio 打开 Unity 导出的 Android 工程 ) 博客中将 Unity 项目导出为了 Android 项目 , 并在 Android Studio 中编译并运行了该项目 ;

使用的 C# 脚本 , 是在 【Unity3D】Unity 游戏画面帧更新 ( 游戏物体 GameObject 移动 | 借助 Time.deltaTime 进行匀速运动 ) 系列博客中编写的脚本 ;

一、 Android Studio 模块准备


首先要在 Unity 导出的 Android 工程中 , 创建一个 Android 模块 , 用于开发 Android 相关功能 ;

这是在上一篇博客导出 Android 工程 ,

1、 创建 Android 模块

选择 " 菜单栏 | File | New | New Module… " 选项 ,

包名为 kim.hsl.mylibrary 保持默认即可 ;

2、 定义测试类

在该 Android Library 模块中 , 定义如下类 , 作为测试类 ;

代码语言:javascript
复制
package kim.hsl.mylibrary;

import android.util.Log;

public class Student {
    public static final String TAG = "Student";
    public String name;
    public int age;

    public String getName() {
        Log.i(TAG, "getName");
        return name;
    }

    public void setName(String name) {
        Log.i(TAG, "setName");
        this.name = name;
    }

    public int getAge() {
        Log.i(TAG, "getAge");
        return age;
    }

    public void setAge(int age) {
        Log.i(TAG, "setAge");
        this.age = age;
    }
}

3、 添加依赖

在入口应用中 , 需要依赖该类 , 在 build.gradle 构建脚本中 , 配置如下依赖库 ;

代码语言:javascript
复制
dependencies {
    implementation project(':unityLibrary')
    implementation project(':mylibrary')
    }

4、 编译 Android 模块拿到字节码文件

在 Android Studio 中 选择 " 菜单栏 | Build | Make Project " 选项 , 编译该类 ;

在 该依赖库模块 下的 build 目录中 , 找到打包的 jar 包 ; jar 包路径为:

工程根目录\mylibrary\build\intermediates\compile_library_classes_jar\debug\classes.jar

5、 拷贝字节码到 Unity 编辑器

将编译后的 jar 包拷贝到 Unity 编辑器中 , 在 Assets 目录下创建 Plugin/Android 目录 , 将 classes.jar 放在该目录中 ;

本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2022-11-22,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 文章目录
  • 一、 Android Studio 模块准备
    • 1、 创建 Android 模块
      • 2、 定义测试类
        • 3、 添加依赖
          • 4、 编译 Android 模块拿到字节码文件
            • 5、 拷贝字节码到 Unity 编辑器
            相关产品与服务
            腾讯云服务器利旧
            云服务器(Cloud Virtual Machine,CVM)提供安全可靠的弹性计算服务。 您可以实时扩展或缩减计算资源,适应变化的业务需求,并只需按实际使用的资源计费。使用 CVM 可以极大降低您的软硬件采购成本,简化 IT 运维工作。
            领券
            问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档