Unity与Android交互 以及接入SDK时所遇到的各种问题
1、Direct local .aar file dependencies are not supported when building an AAR. 参考 2、Unity打包报错Program type already present: com.xxx.xxx.BuildConfig 参考 3、Unity打包出错:UnityPlayerActivity.java使用或覆盖了已过时的 API。 Root\\Temp\\gradleOut\\unityLibrary\\src\\main\\java\\com\\unity3d\\player\\UnityPlayerActivity.java使用或覆盖了已过时的 API。 参考 注: 参考链接里说要删除 unity文件目录D:\\WorkTools\\Unity\\2019.4.16f1c1\\Editor\\Data\\PlaybackEngines\\AndroidPlayer\\Source下的文件夹删掉即可 如果这个方法解决了你的问题,一定要把这个文件备份一下,因为你再创建新的工程导入其它新的aar文件是,发布的时候会报错,因为这个文件丢失了, 4、如果导入unity的是jar包,需要先把jar包里的libs/classes.jar删除掉,然后再改会jar格式, 如果你电脑是苹果,选中jar包里面所有文件 右键压缩, 因为使用unity打包时,classes.jar包会自动打包到libs里面, 5、在安卓导入 classes.jar文件 ,却没法继承UnityPlayerActivity,因为 unity 2019版本之后UnityPlayerActivity就剥离了classes.jar, UnityPlayerActivity在:Unity\\2019.4.16f1c1\\Editor\\Data\\PlaybackEngines\\AndroidPlayer\\Source\\com\\unity3d\\player 6、找不到方法,具体的报错信息我忘记啥了,翻译成中文就是 找不到非静态方法/找不到静态方法, 能获取到Java类的前提下 解决方法:1、检查Java类中是否有这个方法 2、检查时候unity脚本里写的方法和Java里的方法大小写不一致(Java区分大小写) 3、是否传参错误/传参类型错误 7、找不到安卓里面的Java类 检查包名和类名是否和Java里面的包名类名一样 8、调用到了安卓的方法,但是却没有执行,也没有报错 尝试C#脚本里的AndroidJavaClass改成AndroidJavaObject试试(因为我对这两个类不熟悉,才会 犯这个错误) 目前就这几个,其它的有的忘记了。后续再遇到unity与安卓交互的问题,会接着更新, 点进来的有缘者,如果你有更好的解决方法,或者其它问题并有解决方法,正好你这会不是很忙, 可以占用你几分钟的时间吗? 可以把你遇到的问题和解决方法,或者不知道怎么解决的问题,放到语雀的共享文档内,以便让更多的被困难所困扰的朋友可以解决所遇到的困难 链接为: