Unity与Andriod交互错误合集

2023-11-19

一、无法调用安卓中的方法no non-static method with name=‘’

报错如下,。在保证代码中的方法名没有问题,并且调用的方法名的返回值和传递的参数等都没有问题的情况下,
第一、查看在Unity项目中jar包存放的位置是否正确,需要放在Assets\Plugins\Android目录下
第二、查看在Android 中的方法类是否继承正确,如下二图中,是错误的。需要继承UnityPlayerActivity类,才能在Unity中调用

图二
(图2)

二、 报错为过时的API等错误,是在Android打jar时,将class的内容也打进包中。

所以出现了重复的类
报错详情如下:
在这里插入图片描述

在这里插入图片描述

具体原因:

在这里插入图片描述
解决方案:
1、如果只是BuildConfig.class文件内容重复,只需在Android工程中的build.gradle文件中加以下一段代码即可。
在这里插入图片描述
//不生成BuildConfig类

  libraryVariants.all {
        generateBuildConfigProvider?.get()?.enabled = false
    }

2、如果还报类似的错误,原因是将Unity的Class.jar包也打入进来了,还是当前文件中,在dependencies区块内
将lib中引用的class后的代码注释掉、且加compileOnly files(‘libs/classes.jar’)
// implementation files(‘libs\classes.jar’)

dependencies {
    compileOnly files('libs/classes.jar')  //只在编译有效,不打入包中
   // implementation files('libs\\classes.jar')
}

·
·

三、Android studio报错乱码解决方案

在android studio项目中依次点击Help --> Edit Custom VM Options
在配置文件中加入以下代码。

-Dconsole.encoding=UTF-8
-Dfile.encoding=UTF-8

然后重启IDE,操作:File --> Restart IDE。
操作完成后,重新build,引发报错,报错显示就会正常。

·
·

四、打包安卓APK 时报错:WARNING:enableR8

版本:Unity 2020.3.3f1c1

Configure project :launcher
WARNING: The option ‘android.enableR8’ is deprecated and should not be used anymore.
It will be removed in a future version of the Android Gradle plugin, and will no longer allow you to disable R8

解决方案:勾选custom base gradle template
在这里插入图片描述
在安卓文件目录下找到baseProjectTemplate.gradle这个文件
在这里插入图片描述
修改为3.4即可:在2020.3.7版本后会被修复
在这里插入图片描述

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

Unity与Andriod交互错误合集 的相关文章

随机推荐

  • docker快速学习--docker compose服务编排--06

    一 服务编排 1 1 概念 按照一定的业务规则批量管理容器 1 3 问题 微服务架构的应用系统中一般包含若干个微服务 每个微服务一般都会部署多个实例 如果每个微服务都要手动启停 维护的工作量会很大 1 要从Dockerfile build
  • go踩坑——no required module provides package go.mod file not found in current directory or any parent

    背景 准备运行下面代码 package main import github com gin gonic gin func main 创建一个默认的路由引擎 r gin Default GET 请求方式 hello 请求的路径 当客户端以G
  • C++实现复数类

    主要还是练习封装 做一个demo 下一步会实现string类 include
  • ECCV 2022

    作者丨人脸人体重建 来源丨人脸人体重建 编辑丨极市平台 极市导读 本文围绕3D人脸重建的评估方式进行了重新的思考和探索 作者团队通过构建新数据集RELAY 囊括了更丰富以及更高质量的脸部区域信息 并借助新的流程对先前的数十个重建算法 3DM
  • 题解模板

    题目链接 题目描述 输入描述 输出描述 示例1 输入 输出 示例2 输入 输出 说明 解决思路 总结结论 已知条件 思路里程 实现过程 代码
  • 一些大厂的开源平台

    百度 http fex baidu com http efe baidu com 饿了么 https fe ele me 腾讯 http www alloyteam com 美团 https tech meituan com 滴滴 http
  • mongodb按照字段模糊查询方法

    数据库直接查询 db student find name regex jack options i db student find name regex jack i db student find name jack i 开源组件使用 g
  • 随手写系列——写一个凯撒密码转换页面

    文章目录 先展示效果 H5编写 C3编写 JS编写 方法一 过程版 JS编写 方法二 对象版 代码获取 先展示效果 因为主要是实现功能 所以CSS写的很粗糙 H5编写 基础结构如下 先构成最外面的大盒子 box 然后 inner gt p装
  • Python 3 Thread 模块的学习理解

    一 概述 Thread 类描绘了一个单独运行的控制线程活动 有两种方式指定这种活动 通过一个可调用对象的构造函数 或者通过覆盖子类run 方法 没有其他的方法应在子类中重写 换句话说 只有推翻这个类的 init 和run 方法 一旦Thre
  • 斐波那契数列——UPC

    题目描述 斐波那契数列F满足如下性质 F1 1 F2 2 Fi 2 Fi 1 Fi 对于一个正整数n 它可以表示成一些不同的斐波那契数列中的数的和 你需要求出 有多少种不同的方式可以表示出n 输入 输入有多组数据 第一行为一个整数T 表示数
  • c/c++内存管理

    1 c c内存分布 int globalVar 1 static int staticGlobalVar 1 void Test static int staticVar 1 int localVar 1 int num1 10 1 2 3
  • CSharp之接口(Interface)

    接口通过Interface关键字修饰 接口是抽象类的一个实例 当抽象类中所有的方法全部为抽象方法时 这个抽象类可以称为接口 接口不能被实例化 接口中的方法没有方法体 只能包含方法的声明 并且所有方法成员是公有的 public 接口中成员不能
  • Web 应用程序安全测试

    Web 应用程序安全测试 4 0 引言和目标 4 1 信息收集 4 2 配置和部署管理测试 4 3 身份管理测试 4 4 认证测试 4 5 授权测试 4 6 会话管理测试 4 7 输入验证测试 4 8 错误处理测试 4 9 弱口令测试 4
  • 查看Linux系统版本的命令(2种方法)

    一 查看Linux系统版本的命令 2种方法 1 lsb release a 即可列出所有版本信息 这个命令适用于所有的Linux发行版 包括RedHat SUSE Debian 等发行版 2 cat etc redhat release 这
  • 【华为OD机试真题2023B卷 JAVA&JS】字符串分割

    华为OD2023 B卷 机试题库全覆盖 刷题指南点这里 字符串分割 时间限制 3秒 内存限制 262144K 语言限制 不限 题目描述 给定非空字符串s 将该字符串分割成一些子串 使每个子串的ASCII码值的和均为水仙花数 1 若分割不成功
  • 4.函数、模块与包

    文章目录 一 函数 二 模块与包 引用 一 函数 Python 使用 def 关键字来声明函数 格式如下所示 def 函数名 参数 函数体 return 返回值 如果要定义一个无任何功能的空函数 函数体只写 pass 即可 def 函数名
  • element组件库中tab表格利用cellStyle方法单独改变单元格样式

    公司项目中已经封装了一个公共的tab组件 新的需求需要对表格中特定的单元格字体颜色做改变 查询了官方文档发现有cellStyle这个属性 在公共组件中加了标签属性 一开始是使用 emit方法触发父传子 使用该表格是自定义该事件 但是样式不生
  • 最大似然估计【MLE】与最大后验概率【MAP】

    最大似然估计 Maximum likelihood estimation 简称MLE 和最大后验概率估计 Maximum a posteriori estimation 简称MAP 是很常用的两种参数估计方法 如果不理解这两种方法的思路 很
  • matlab 回归

    我发现这两天写题目 回归真的是个万能方法 但是我只会最简单的线性回归 为此特地记录一下以下几种方法 1 regress 简单线性回归 可以是一元 也可以是多元 具体用法可以看这个图片 这个方法最简单 也最好用 但是也有局限 比如非线性的时候
  • Unity与Andriod交互错误合集

    一 无法调用安卓中的方法no non static method with name 报错如下 在保证代码中的方法名没有问题 并且调用的方法名的返回值和传递的参数等都没有问题的情况下 第一 查看在Unity项目中jar包存放的位置是否正确